拖动文本框会丢失拖动焦点 - WPF

时间:2014-07-10 09:22:56

标签: c# wpf

我正在尝试在RadTreeView(telerik)中拖放项目时在WPF中实现自动滚动功能,但是当其中一个TreeViewItem单元格中有TextBox时,我遇到了问题。

我附上了截图,试图提出一个想法。

enter image description here

现在,为了拖放行,您可以选择左侧的单元格(数字列)并向上或向下拖动,如果鼠标停留在第一列,则自动滚动功能非常好。但是,如果在拖动时,您将移动到具有文本(活动列)的下一列,则由于文本是活动文本框,自动滚动无法工作。如果我将所有文本框设置为非活动状态,则它可以正常工作。

所以,我的问题是这样的 - 无论如何,在拖动时将文本框设置为非活动状态,然后在经过它后重新激活它? (或者如果有更好的方法来完成我正在寻找的结果,我可以尝试什么?)

可能是文本框中有自己的拖放事件,当鼠标悬停在文本框上时会触发并基本上劫持主拖动事件,但我缺乏WPF的经验可能是我不能的原因找到他们!

这是我到目前为止所尝试的内容:

  • drag_start事件中将所有TextBox设置为非活动状态,然后在drag_ended事件上重置。 (这是有缺陷的,因为并不总是触发drag_ended事件,使TextBox无效)
  • 将所有TextBoxes设置为Readonly(与TextBox处于活动状态时相同,不能用作拖动丢失焦点)
  • 我试图在Mouse Over上停止拖放文本框。

这里有任何建议 - 受到最后一期的影响!

由于

0 个答案:

没有答案