【发布时间】:2014-07-22 14:11:20
【问题描述】:
我想在多个DataGrid 上重复使用ContextMenu。
所以我将上下文菜单放在了我的Window 的Resources 中。
我无法绑定到放置了ContextMenu 的DataGrid 的SelectedItem 属性。
在本例中,我试图在上下文菜单中显示SelectedItem 的Name 属性。
<Window.Resources>
<ContextMenu x:Key="DgContextMenu"
DataContext="{Binding Path=PlacementTarget.Tag, RelativeSource={RelativeSource Self}}">
<MenuItem Header="{Binding SelectedItem.Name, RelativeSource={RelativeSource AncestorType=ContextMenu}}" />
</ContextMenu>
</Window.Resources>
<DataGrid ItemsSource="{Binding CollectionView}"
ContextMenu="{StaticResource DgContextMenu}"
Tag="{Binding DataContext, RelativeSource={RelativeSource Self}}">
<DataGrid.Columns>
<DataGridTemplateColumn Header="Name" Binding="{Binding Name}" />
</DataGrid.Columns>
</DataGrid>
提前致谢
【问题讨论】:
标签: c# wpf binding datagrid contextmenu