这是一个WPF应用程序。LogicalTree直接在鼠标下控制否VisualTree
我试图直接控制鼠标,它证明是一个令人惊讶的痛苦。
Mouse.DirectlyOver,InputHitTest和VisualTreeHelper.HitTest都引用了VISUAL树。我试图抓住控制本身。
示例:如果我有一个TextBox并使用上述任何一种,它将返回一个TextBoxView,而我想要TextBox本身。
这发生在PreviewLeftButtonDown事件内部。发件人不是一个选项,因为发件人对我来说总是一个ListViewItem。如果我检查e.OriginalSource,它仍然是VisualTree元素,而不是实际的控件。
如果需要,可以进一步解释。
谢谢
这将是接受的答案 TextBoxView是我最终使用的,TextBoxView实际上包含了文本,而这正是我真正想要的,我想避免触发拖动,如果用户在文本框内拖动来选择一些文本。 谢谢 – tronious 2013-03-07 16:55:26