在WPF TextBox上单击鼠标,文本框将获得焦点并选择所有文本。
我怎么能禁用这种行为?点击时,只有插入符号应放在字符上(如在旧的窗户中)。 为什么?如果我单击文本框我想标记一些文本,或设置carret位置,键入更多文本。我不想先取消选择整个标记的文本,然后再次单击该位置。
另一件事是,当窗口失去焦点并将其取回时,再次选择整个文本并且丢失了carret位置。因此无法从另一个窗口复制文本并粘贴到没有文本框的文本框中再次选择正确的卡雷特位置。
也许这是一个系统"功能" (W8.1 / W10)因为非WPF文本框具有相同的行为,但这很烦人。感谢您的帮助。
答案 0 :(得分:2)
默认情况下,我的文本框不会这样做,我用它做的唯一一件事就是将TextBox.Text属性与我的ViewModel的属性绑定
这里描述了上面提到的事物的机制,你只需要还原它们 https://social.msdn.microsoft.com/Forums/vstudio/en-US/564b5731-af8a-49bf-b297-6d179615819f/how-to-selectall-in-textbox-when-textbox-gets-focus-by-mouse-click?forum=wpf