如果我们可以通过按下按钮或者等同按下来移动到上一行的开头,那么当使用箭头键时,文本框会更快地导航。如果您在使用HTML输入或textarea的网页中尝试此功能,此工作正常。但对于Windows窗体文本框控件它与记事本有相同的行为。当您按下或向上箭头键时,它会从整个文本的结尾或开始移动光标。使用向上和向下箭头键突出显示文本时,它也应该有效。像在HTML输入字段中一样在WinForm文本框中使箭头键功能正常工作?
有关如何在C#或vb.Net中实现这一点的任何想法?提前致谢。
这里是当前工作突出,但仅适用于Shift +向下键:
if ((keyData == (Keys.Shift | Keys.Down))) {
if (ctl is TextBoxMaskBox) {
var edit = ctl as TextBoxMaskBox;
int selectionLength = edit.MaskBoxSelectionLength;
int remTextLength = edit.MaskBoxText.Length - edit.MaskBoxSelectionLength;
string remText = edit.MaskBoxText.Substring(selectionLength, remTextLength);
if (remText.IndexOf(Environment.NewLine) == -1) {
edit.MaskBoxSelectionLength = edit.MaskBoxText.Length;
return true;
}
}
}
@Yahia,编辑了上述问题和当前工作代码已提供。 – pogs 2012-04-02 07:44:07