【发布时间】:2010-11-24 09:47:36
【问题描述】:
我正在尝试让一些绑定代码正常工作。基本上,我想将网格上下文菜单元素的 IsEnabled 属性与网格中选定行的值绑定。
我可以用这个:
<my:DataGrid.ContextMenu>
<ContextMenu DataContext="{Binding PlacementTarget.SelectedItem, RelativeSource={RelativeSource Self}}">
<MenuItem Header="Grant Access" IsEnabled="{Binding Connectable}"/>
</ContextMenu>
</my:DataGrid.ContextMenu>
但我想这样做,但它不起作用。它不会出错,只是不会禁用菜单项。知道为什么吗?
<my:DataGrid.ContextMenu>
<ContextMenu>
<MenuItem Header="Grant Access" IsEnabled="{Binding Path=SelectedItem.Connectable, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type my:DataGrid}}}"/>
</ContextMenu>
</my:DataGrid.ContextMenu>
【问题讨论】: