按照正常逻辑代码一开始代码实现如下
<DataGrid.ContextMenu>
<ContextMenu>
<MenuItem x:Name="Merge" Header="合并账号" Command="{Binding MergeAccountCommand}" CommandParameter="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type DataGrid}}, Path=SelectedItems}"/>
</ContextMenu>
</DataGrid.ContextMenu>
结果报错了,参数为空
<DataGrid.ContextMenu>
<ContextMenu>
<MenuItem x:Name="Merge" Header="合并账号" Command="{Binding MergeAccountCommand}" CommandParameter="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ContextMenu}}, Path=PlacementTarget.SelectedItems}"/>
</ContextMenu>
</DataGrid.ContextMenu>
改为这样可以成功绑定
WPF DataGrid 菜单绑定问题解决
本文详细介绍了在WPF中使用DataGrid的上下文菜单时遇到的绑定问题,通过调整CommandParameter的绑定路径,从DataGrid的SelectedItems属性成功获取到所需数据,解决了参数为空的问题。
818

被折叠的 条评论
为什么被折叠?



