我正在尝试获取在 OnKeyDown 事件期间输入的字母的当前索引。
例如,如果我在 RichEdit 控件中有一个文本为“MOVS,21”
当我在事件“OnKeyDown”中将字符串更改为“MOV(S,21”时,我想知道“(”的索引。
有什么办法可以得到这个索引吗?感谢你的帮助。
问候, 巴兰辛尼亚
我正在尝试获取在 OnKeyDown 事件期间输入的字母的当前索引。
例如,如果我在 RichEdit 控件中有一个文本为“MOVS,21”
当我在事件“OnKeyDown”中将字符串更改为“MOV(S,21”时,我想知道“(”的索引。
有什么办法可以得到这个索引吗?感谢你的帮助。
问候, 巴兰辛尼亚
Richedit 在接收到 KeyDown 事件时的一般行为是将相应的 char 插入到当前 carret 位置。
您应该能够使用richedit 的 selectionStart 和 selectionEnd 属性来获得这个位置。
private void richTextBox1_KeyDown(object sender, KeyEventArgs e)
{
MessageBox.Show(richTextBox1.SelectionStart.ToString());
}
您需要处理一些边缘情况,例如,当按下的键是删除时。