这可能非常简单。
我在 WinForm 上有一个文本框,Text =“ABCDEFGH”。我需要选择“BCD”并将 I-Beam(光标、插入符号、闪烁的“|”)保留在“A”和“B”之间。设置 SelectionStart = 1 和 SelectionLenght = 3 不起作用,我无法弄清楚。
您需要设置SelectionLength
为 0 作为文档中注明 http://msdn.microsoft.com/en-us/library/system.windows.forms.textboxbase.selectionstart.aspx.
您可以通过设置以编程方式在文本框中移动插入符号
将 SelectionStart 移动到文本框中您想要的位置
要移动到的插入符号并将 SelectionLength 属性设置为一个值
为零 (0)。
如果问题是这样的BCD实际上已被选中,但您希望将光标移回之前B我不相信您能够通过框架属性来做到这一点,因为选择文本会将光标移动到文本的末尾。您需要使用坐标和本机互操作,如前所述here https://stackoverflow.com/questions/1027910/winforms-screen-location-of-caret-position.
[DllImport("user32.dll")]
[return: MarshalAs(UnmanagedType.Bool)]
static extern bool GetCaretPos(out Point lpPoint);
然后你可以打电话设置插入符位置 http://msdn.microsoft.com/en-us/library/ms648405%28VS.85%29.aspx.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)