您好,我是一名新的 WPF/MVVM 程序员,遇到了 MenuItem 的问题。
我有一个菜单,它的 ItemsSourced 绑定到我创建的对象;
<Menu Height="23" HorizontalAlignment="Left" Name="menuProfile" VerticalAlignment="Top" Width="58" >
<MenuItem Header="Profiles" ItemsSource="{Binding Path=ProfileList}" DisplayMemberPath="ProfileName" >
<MenuItem.ItemContainerStyle>
<Style TargetType="MenuItem">
<Setter Property="IsCheckable" Value="True"/>
<Setter Property="IsChecked" Value="{Binding Path=IsSelected, Mode=TwoWay}"/>
</Style>
</MenuItem.ItemContainerStyle>
</MenuItem>
</Menu>
当我运行它时,我可以在菜单中看到我的所有项目,但我的属性IsSelected没有得到更新。
public bool IsSelected
{
get { return _isSelected; }
set
{
_isSelected = value;
GetProfileConfigInfo();
}
}
如果我取出样式容器并将IsCheckable和IsChecked值与 MenuItem 保持一致......
<MenuItem Header="Profiles" ItemsSource="{Binding Path=ProfileList}" DisplayMemberPath="ProfileName" IsCheckable="True" IsChecked="{Binding IsSelected}" />
我的属性IsSelected得到更新,但我看不到菜单中的任何项目,只是标题Profiles。
并知道我做错了什么????