是否可以定义"字边界"文本框的字符?

时间:2015-10-20 10:07:39

标签: c# .net winforms textbox

(我简直不敢相信这一点;我很可能在搜索时失败了。)

单行WinForms TextBox control,其中包含内容:

enter image description here

当用户使用 Ctrl + Ctrl + 时,插入符号移到最后分别是文本框内容的开头。

我的目标

我想配置文本框以便使用上述键进行导航(或者另外使用 Shift ),插入符在字边界处停止

E.g。当插入符号位于0并且用户按 Ctrl + Shift + 时,它将如下所示:

enter image description here

即。它选择第一个"字"只要。

标准行为是:

enter image description here

即。它选择整个文本。

有趣的是,本机Windows控件如在" Run"对话框的行为如下所述:

enter image description here

Edge或Internet Explorer甚至Windows资源管理器的地址栏也会在字边界处停止。

我的问题

是否可以(可能通过P / Invoke)为TextBox控件配置某些停止字符?

更新1

我可以考虑处理键盘事件并手动执行此操作。

1 个答案:

答案 0 :(得分:1)

回答你的问题......但是我不知道如何。

但是

有一个控件具有您正在寻找的行为,即RichTextBox。 它具有您要求的行为,并具有禁用默认多行为行为的属性。

使RichTextbox看起来像常规文本框的属性

  • Multiline - false
  • DetectUrls - false
  • 身高 - 20

注意: richTextBox使 NOT 具有开箱即用的自动完成功能,就像常规文本框一样。