C# 如何使用VS2008将事件与WPF中的菜单项关联?

C# 如何使用VS2008将事件与WPF中的菜单项关联?,c#,wpf,visual-studio,events,menuitem,C#,Wpf,Visual Studio,Events,Menuitem,我正在学习WPF(我知道的还不多)。我知道如何通过直接编辑xaml将菜单子项与事件关联,但我想知道如何使用VisualStudio做同样的事情 例如,考虑下面的XAML片段: 我希望能够使用Visual Studio将“_Exit”菜单项与MouseEnter、MouseLeave和Click的相应事件处理程序相关联,而不是手动编辑xaml文本。我试图通过使用“Items”集合编辑器来实现这一点,但它似乎只允许编辑子项的属性,而不允许编辑事件。是否有其他编辑器/对话框/etc允许编辑子项的事

我正在学习WPF(我知道的还不多)。我知道如何通过直接编辑xaml将菜单子项与事件关联,但我想知道如何使用VisualStudio做同样的事情

例如,考虑下面的XAML片段:


我希望能够使用Visual Studio将“_Exit”菜单项与MouseEnter、MouseLeave和Click的相应事件处理程序相关联,而不是手动编辑xaml文本。我试图通过使用“Items”集合编辑器来实现这一点,但它似乎只允许编辑子项的属性,而不允许编辑事件。是否有其他编辑器/对话框/etc允许编辑子项的事件

谢谢你的帮助

约翰


附言:感谢H.B花时间正确格式化xaml.:-)

我不知道你所说的“使用visual studio编辑”是什么意思,所以我希望我在这里的思路是正确的

您可以在xaml中指定项目名称:


然后在c#codebehind中:

exitMenuItem.Click += (s,e) =>
{
    DoIt(); // your event handling code
}

在该项目的“属性”窗口上,切换到“事件”选项卡,然后双击所需事件旁边的框


在2008年,我认为有一个按钮看起来像一个闪电,你可以点击它来获取事件。它应该与按钮位于同一区域,以按字母顺序排序或按类别排序或其他方式排序。

似乎不可能做到这一点。

我意识到这是一个旧线程,但由于我遇到了它,我想其他人可能会从我发现的使用VisualStudio查看/编辑子菜单项的事件处理程序定义的方法中受益

此方法仍然需要访问XAML文件,但不必编辑它。只需选择(单击)XAML文件中定义子菜单项的记录,就可以访问属性窗口(F4)中的事件页面


如果微软在听,我会说这是集合编辑器中的一个设计缺陷(bug?)。

我也很想知道这一点,但一直没有找到解决办法。我认为这是不可能的@Cory:希望这个论坛的众多专家中的一位能够证实你的怀疑(现在我也一样)。你可以双击WYSIWYG编辑器中的root
MenuItem
,为它生成一个点击事件。他想为child
MenuItem
s找到一种同样的方法。不是通过编辑XAML,而是通过视觉方式。@H.B:您编辑了我发布的XAML代码,现在看起来好多了。你是怎么做到的?(如果我可以问的话)@Hex440bx:请看。下次只需粘贴代码,选择它,然后按菜单中的“代码块”按钮(大括号)将其缩进(这会导致打印括号,还会添加语法高亮显示,但可能不是正确的语言,因此有一个修饰符)@H.B:谢谢。我已经阅读了格式化帮助页面,但不能完全按照它应该的方式工作。我将在下一篇文章中再试一次。希望下次我能做对。如果我错了,请纠正我,但对于菜单子项,我无法进入事件页面。菜单“header”(如我给出的示例中的“\u File”)有一个事件页面,但子项(如我给出的示例中的“\u Exit”)似乎没有事件页面,这似乎是正确的。对不起,我在发帖前没有检查。