以编程方式更改 WPF 文本框的文本,以指示光标位置和当前所选内容



我正在为我的WPF应用程序实现某种数字键盘控件,客户端可以使用它来方便地通过触摸屏输入文本。

控件本身运行良好,我什至设法在前台运行控件(这是一个窗口(,而作为输入目标的文本框保留焦点和选择。

现在,我想将用户的输入添加到 TextBox 的 Text 属性中,就像他使用键盘输入它们一样。这意味着应该遵守某些行为,例如......

  • 当光标位于文本之间时,应将字符放置在光标当前所在的位置。
  • 选择某些内容时,应将所选内容替换为输入的字符。

我可以用什么来做到这一点吗?我找到的唯一函数是TextBoxBase.AppendText,它不考虑光标位置或选择,而只是将输入的字符串附加到文本的末尾。

使用 TextBox.SelectedText,它同时具有 setter 和 getter。

如果未选择任何文本,则SelectedText是插入符号位置的零长度范围。

最新更新