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