.net - 关于在 WPF 中调试焦点问题的任何提示?

标签 .net wpf debugging focus

具体来说,我有一个按钮可以打开一个非模态子窗口。当子窗口打开时,主窗口中的某些东西会从子窗口中窃取焦点。

完全通用的方法是注释掉部分代码,直到问题消失。我正在寻找更快的方法。

最佳答案

我正在使用 Snoop立即执行此操作。

首先,Snoop 在状态栏中显示当前聚焦的元素和当前的 FocusScope。

你可以让它向你展示所有 GotFocus 和 LostFocus 事件:

  • 运行您的应用程序。
  • 运行 Snoop。
  • 在下拉菜单中选择您的应用。
  • 单击双筒望远镜(“Snoop”)按钮。
  • 在右侧 Pane 中,单击事件选项卡。
  • 单击以关闭下拉列表。
  • 向下滚动到键盘部分并检查 GotKeyboardFocus、LostKeyboardFocus 和可选的 PreviewXXX 事件。
  • 现在做你需要做的事情来操纵焦点并观察 Snoop 窗口。

  • 同样,您可以以相同的方式跟踪 FocusManager 事件。

    关于.net - 关于在 WPF 中调试焦点问题的任何提示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3351442/

    相关文章:

    c# - 如何将进程输出重定向到 System.String

    c# - 如何从另一个表单刷新一个表单?

    .net - 奇怪的 LINQ to SQL .Union() 错误

    WPF:为什么 PopUp 中的 MediaElement 不能调整到屏幕高度?

    c - 加载.dmp文件定位错误代码,但崩溃发生在意想不到的地方(在ntdll.dll中)

    c# - 如何在 Xamarin Forms 中创建自定义可绑定(bind) View ?

    c# - WPF 用户控件预配置

    javascript - 从 C# 代码调用位于 WPF WebBrowser 控件中的 Javascript 函数时出错

    java - 如何在 eclipse Luna 中调试 JBoss 7.1 应用程序

    C# 预编译会影响行号吗?