gpt4 book ai didi

c# - WPF 用户控件不允许丢失焦点在单独的控件上更改

转载 作者:行者123 更新时间:2023-11-30 18:41:16 27 4
gpt4 key购买 nike

这个有点难以解释。

我有一个带有一些文本框的用户控件。在同一个窗口中,我还在这个用户控件的正上方有一个菜单。每当我离开时,LostFocus 都会在文本框上正确触发,这就是我想要的。奇怪的是,如果我单击窗口顶部的菜单按钮,LostFocus 事件不会在文本框上触发。有没有一种优雅的方法可以确保我的菜单正确地允许 LostFocus 在最后获得焦点的任何控件上触发?

我还想避免必须更新 BindingExpressions,否则我可能会对 N 个文本框执行此操作,这是不可取的。

我无法想象实现这一点太难了。我只是不明白这是怎么行不通的:在大多数其他情况下,LostFocus 总是会触发。

有什么想法吗?谢谢。

最佳答案

菜单是 WPF 还是 Winforms/UnManaged?如果两者中的任何一个,则不会触发失去焦点事件。多次从菜单执行保存或其他数据功能时,这会对 WPF 控件造成严重破坏。为了解决这个问题,我不得不实现多种方法来解决这个问题。最简单的方法是在用户控件本身上实现鼠标离开事件,并在代码中手动执行您需要的任何操作。

关于c# - WPF 用户控件不允许丢失焦点在单独的控件上更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7049128/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com