我有一个UserControl
,其中包含ListView
。
另外,我有一个 listViewItems.cs 类,其DisplayMemberBinding为GridView
中的listView
。
每个ListView-Item都有一个上下文菜单。
现在我尝试启用/禁用context-menu-items,具体取决于ListViewItems类中的值是null
我已尝试将IsEnabled
属性绑定到类 ListViewItems.cs 中的布尔值ShowResItemEn
,但它不起作用。
DataOutput.xaml
<ListView.Resources>
<ContextMenu x:Name="cmListView" x:Key="ItemContextMenu" DataContext="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}">
<MenuItem x:Name="itmRes"
Header="Reservierungen anzeigen"
IsEnabled="{Binding PlacementTarget.SelectedItem.ShowResItemEn, RelativeSource={RelativeSource FindAncestor,AncestorType=ContextMenu}}"
Command="{Binding ShowResItemCmd}"
CommandParameter="{Binding RelativeSource={RelativeSource AncestorType=ContextMenu}, Path=PlacementTarget.SelectedItem}" >
</MenuItem>
</ContextMenu>
</ListView.Resources>
类ListViewItems.cs
public Boolean ShowResItemEn
{
get
{
return (auftrNr[0] == null) ? false : true;
}
}
答案 0 :(得分:0)
好的,现在有效。我已经设置了AncestorType错误
IsEnabled="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type DataGrid}},Path=SelectedItem.ShowBesItemEn}"