C# 如何绑定菜单项的IsChecked属性
在这里,我要绑定的代码已选中菜单的属性C# 如何绑定菜单项的IsChecked属性,c#,wpf,wpf-controls,C#,Wpf,Wpf Controls,在这里,我要绑定的代码已选中菜单的属性 <MenuItem Header="_View"> <MenuItem IsCheckable="True" IsChecked="{Binding ElementName=TermMenu, Path=IsChecked}" Header="Term" /> <MenuItem IsCheckable="True" IsChecked="True" Head
<MenuItem Header="_View">
<MenuItem IsCheckable="True" IsChecked="{Binding ElementName=TermMenu, Path=IsChecked}" Header="Term" />
<MenuItem IsCheckable="True" IsChecked="True" Header="Key" />
<MenuItem IsCheckable="True" IsChecked="True" Header="Hand" />
<MenuItem IsCheckable="True" IsChecked="True" Header="Rule" />
</MenuItem>
这是上下文菜单
<ContextMenu x:Key="DataGridColumnHeaderContextMenu" >
<MenuItem x:Name="TermMenu" IsCheckable="True" IsChecked="True" Header="Key Term" />
<MenuItem x:Name="Key" IsCheckable="True" IsChecked="True" Header="Key Term Description" />
<MenuItem x:Name="ShortHand" IsCheckable="True" IsChecked="True" Header="Hand" />
<MenuItem x:Name="Rule" IsCheckable="True" IsChecked="True" Header="Rule" />
</ContextMenu>
现在我想,当上下文菜单项为“检查”时,主菜单视图将自动检查。但是我的代码不起作用。请解释原因。x:Name在参考资料中不起作用。ElementPath中具有指定名称的元素不存在。这就是绑定不起作用的原因。您也不能从代码隐藏中访问Term菜单。您应该将两者绑定到视图模型@wilford sugested。刚刚在示例应用程序中输入了您的代码。绑定工作正常。我直接添加了上下文菜单。我没有把它当作资源使用,但如果你把它当作资源使用,它就会停止工作。也许他应该将两个复选框都绑定到viewmodel。如果我使用样式触发器,问题是否会解决?