0

经过大量研究后,我没有得到它,我怎样才能像我们在 Winforms 中那样实现简单的 Lostfocus。在 Windows 窗体控件中,我们通常使用 LostFocus,当有人按 TAB 键失去焦点或使用鼠标选择其他控件时,我会使用它。但 WPF 并非如此。我第一次使用 LostFocus,但是当我按下 tab 时它不会触发事件。但是,当我使用鼠标单击其他控件时,它确实会正确触发。所以,这并不能解决我的问题。

其次,我尝试使用 LostKeyboardFocus,它在使用 TAB 键时会被触发,并且在少数情况下当我使用鼠标选择其他元素时,但当我从父窗口菜单中选择菜单项时不会。

另外,我可以控制用户控件,我将它放在父窗口的 TAB 控件中。但是当我按下 TAb 键时,它总是选择父窗口菜单而不是我在 UserControl 中的 TreeView。

任何建议都是很大的帮助。谢谢。

4

1 回答 1

0

好吧,我对寻找逻辑推理的追求仍然没有得到满足,但我把简单的事情简单地完成了。@Daniel,正如我所说,我认为这两个问题是相关的,答案确实是相关的。也许你可以解释我在这里作为答案的发现。

我只是将我的 Textbox 和其他控件 [TreeView] 的 TabIndex 属性设置为 1 和 2,现在当我按下 TAB 或使用鼠标选择 TreeView 项目时,我启动了 Lostfocus。并且由于我在控件中设置了选项卡索引,因此它没有选择父菜单项[它现在选择它作为最后一个]。因此,使 Lostfocus 成为我应该用于我的目的的功能。

仍然要求任何有解释或更好解决方案的人分享它。谢谢。

于 2013-05-29T09:31:33.087 回答