Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/327.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# 如何绑定菜单项的IsChecked属性_C#_Wpf_Wpf Controls - Fatal编程技术网

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。如果我使用样式触发器,问题是否会解决?