Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/263.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 以编程方式获取MenuItem的事件处理程序_C#_Wpf_Xaml_Event Handling_Menuitem - Fatal编程技术网

C# 以编程方式获取MenuItem的事件处理程序

C# 以编程方式获取MenuItem的事件处理程序,c#,wpf,xaml,event-handling,menuitem,C#,Wpf,Xaml,Event Handling,Menuitem,我在xaml中定义了此菜单项: <MenuItem Header="header of item" Click="eventhandler_of_item" Name="nameofitem"/> 但是获取click事件处理程序似乎有点棘手。 有人能给我一个提示吗?太乱了,我建议你用,它们很容易传递。我不认为这是可能的。您只能添加或删除事件处理程序(注册和注销)。 据我所知,不可能遍历附加的处理程序(我编写了iterate,因为可能会有多个处理程序附加到一

我在xaml中定义了此菜单项:

<MenuItem 
   Header="header of item"  
   Click="eventhandler_of_item" 
   Name="nameofitem"/>
但是获取click事件处理程序似乎有点棘手。
有人能给我一个提示吗?

太乱了,我建议你用,它们很容易传递。

我不认为这是可能的。您只能添加或删除事件处理程序(注册和注销)。
据我所知,不可能遍历附加的处理程序(我编写了iterate,因为可能会有多个处理程序附加到一个事件)

对于CLR事件,我记得我曾经见过一个基于反射的解决方案

正如H.B.所述(+1),使用命令,这是“正常”类型,可以根据需要使用

string header = nameofitem.Header.ToString();