【问题标题】:Navigate to Event Handler Does not work in WPF Application导航到事件处理程序在 WPF 应用程序中不起作用
【发布时间】:2011-01-27 11:26:27
【问题描述】:

我正在研究使用 .NET WPF 开发的代码库。我正在使用 Visual Studio 2008 IDE。在 XAML 代码中,我有如下一行:

<MenuItem Header="About"  Click="Main_Window_ContextMenu_About_Click"> 

单击鼠标右键,我看到一个名为“导航到事件处理程序”的选项。但是,单击它不会将我带到事件处理程序定义。事实上,这个动作似乎没有任何效果。

为什么会发生这种情况,我该如何解决这个问题?

【问题讨论】:

    标签: wpf visual-studio-2008 ide event-handling


    【解决方案1】:

    如果您使用的是 ReSharper,请在光标位于事件处理程序名称上时按 F12(假设您使用的是 ReSharper 的默认快捷方式)

    【讨论】:

      【解决方案2】:

      XAML 设计器中的快捷方式不是很可靠 - 它仅在 XAML 文件的代码隐藏中定义事件处理程序方法时才有效。例如,如果您有“Window.xaml”,则它仅在处理程序位于“Window.xaml.cs”中时才有效。

      这会中断,例如,如果事件处理程序是在第二个部分类文件(如“Window_EventHandlers.cs”)中定义的。这个特定的甚至在代码隐藏文件中生成了一个新的空白事件处理程序,它立即无法在重复的方法定义上编译 - 呸!

      如果找不到,最好的办法可能是在解决方案或项目范围内搜索方法名称。

      【讨论】:

      • 感谢您的回复,但不确定我是否属于这种情况。我创建了一个非常简单的 WPF 应用程序。事件处理程序在 respetice cs 文件中定义。我仍然无法导航。
      • 嗯,那我不确定。当程序无法编译时,它通常也不起作用,或者至少特别是当设计者反对包含事件处理程序的 XAML 时。这不是重新编译或 VS 重启无法解决的问题。 - 是所有事件处理程序都中断还是只有一个?
      • 在那个例子中就出现了。但在一个单独的项目中,所有这些都崩溃了。
      【解决方案3】:

      This 是一个已知问题。有几种方法可以修复它,包括重新安装。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-09-13
        • 2014-04-23
        • 2019-09-22
        • 1970-01-01
        • 1970-01-01
        • 2021-11-05
        • 1970-01-01
        相关资源
        最近更新 更多