Wpf 我怎样才能在MenuItem带孩子的地方启动命令
单击带有子菜单项的菜单项时,不触发命令。 命令具有很好的约束力 无子命令的MenuItem运行正常Wpf 我怎样才能在MenuItem带孩子的地方启动命令,wpf,command,menuitem,Wpf,Command,Menuitem,单击带有子菜单项的菜单项时,不触发命令。 命令具有很好的约束力 无子命令的MenuItem运行正常 <MenuItem Header = "TopMenu" Command = "{Binding TopCommand}"> <!-- Not firing --> <MenItem Header = "ChildMenu" Command = "{Binding ChildCommand}" /> <!-- Fire --> </Me
<MenuItem Header = "TopMenu" Command = "{Binding TopCommand}"> <!-- Not firing -->
<MenItem Header = "ChildMenu" Command = "{Binding ChildCommand}" /> <!-- Fire -->
</MeuItem>
所以,我使用交互…而不是开火
<MenuItem Header = "TopMenu" Command = "{Binding TopCommand}"> <!-- Not firing -->
<i:Interaction.Triggers>
<i:EventTrigger EventName="PreviewMouseLeftButtonDown">
<i:InvokeCommandAction Command = "{Binding TopCommand}"/>
</I:EventTrigger>
<i:Interaction.Trigger>
<MenItem Header = "ChildMenu" Command = "{Binding ChildCommand}" /> <!-- Fire -->
</MeuItem>
如何在MenuItem上对子项使用命令
感谢您当您在菜单项中单击时,它首先检查是否有子元素,如果为真,则显示子元素如果为假,则运行命令 但是,您可以使用触发器:
<Menu>
<MenuItem Header="Father">
<i:Interaction.Triggers>
<i:EventTrigger EventName="PreviewMouseLeftButtonDown">
<i:InvokeCommandAction Command = "{Binding FatherCommand}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
<MenuItem Header="Child" Command="{Binding ChildCommand}"></MenuItem>
</MenuItem>
</Menu>
该代码适合我。使用交互触发方法已经是我的问题了。但是它不起作用。但是您的代码有一些错误