【发布时间】:2015-08-18 08:29:23
【问题描述】:
如何在 .NET 中获取 winforms 文本框的当前光标(插入符号)位置? SelectionStart 仅返回所选文本的开头(选择的左侧)。表示如果光标位于所选内容的右侧,则此值错误。
澄清一下:在 .NET TextBox 中,SelectionStart 指向选择的左侧,当插入符号位于选择的右侧时也是如此。这意味着在两张图片中 SelectionStart 均为 2,但插入符号的位置在第一张图片中为 2,在右侧图片中为 7。
【问题讨论】:
-
“如果光标位于所选内容的右侧,则表示此值错误”是什么意思?
SelectionStart + SelectionLength有帮助吗? -
@musefan:请阅读整个问题! SelectionStart 不能解决我的问题。
-
对于那些不理解自己的问题的人(OP),请先阅读以下内容:当您选择文本并输入内容时会发生什么?它插入到选择的开头,因此它必须是插入符号的位置。无论您选择哪个方向,插入符号都将位于选择的开头
-
什么?从技术上讲,光标始终位于选择的左侧,这就是您使用 SelectionLength 获取右侧位置的原因。