【发布时间】:2015-10-20 10:07:39
【问题描述】:
(我不敢相信从未有人问过这个问题;很可能我搜索失败了。)
只有一行 WinForms TextBox control 包含内容:
当用户使用 Ctrl+→ 或 Ctrl+← 时,插入符号移动到最后分别是文本框内容的最开始。
我的目标
我想配置文本框,以便使用上述键导航(或另外使用 Shift),插入符号在单词边界处停止。
例如当插入符号位于位置 0 并且用户按下 Ctrl+Shift+→ 时,它看起来像这样:
即它只选择第一个“单词”。
标准行为是:
即它选择整个文本。
有趣的是,本机 Windows 控件例如在“运行”对话框中的行为如下所述:
Edge 或 Internet Explorer 甚至 Windows Explorer 的地址栏也会停在单词边界处。
我的问题
是否可以(可能通过 P/Invoke)为 TextBox 控件配置某些停止字符?
更新 1
我可以考虑手动处理键盘事件。
【问题讨论】:
-
richtextbox 控件具有您正在寻找的行为 :) 将多行设置为 false
-
@VisualBean 是否可以有单行RTF控件?
-
将多行设置为 false :)