DTa*_*tor 3 wpf datagrid contextmenu row right-click
我需要在ContextMenu中显示不同的选项,具体取决于右键单击WPF DataGrid的哪一行.我最初的想法是通过绑定或处理鼠标点击事件来实现这一目标,但到目前为止我还没有成功使用这两种策略.非常感激任何的帮助!
谢谢!
丹尼斯
您可以处理DataGrid的ContextMenuOpening事件,并根据路由事件的原始源调整上下文菜单.
下面是一个示例,其中如果原始源的数据上下文是Inventory类型,则显示上下文菜单,否则我不会通过处理事件来显示上下文菜单.
Private Sub InventoriesDataGrid_ContextMenuOpening( _
ByVal sender As Object, _
ByVal e As System.Windows.Controls.ContextMenuEventArgs) Handles _
InventoriesDataGrid.ContextMenuOpening
Dim context = DirectCast(e.OriginalSource, System.Windows.FrameworkElement).DataContext
If TypeOf context Is Inventory Then
InventoriesDataGrid.ContextMenu = InventoriesDataGrid.Resources("DefaultContextMenu")
Else
e.Handled = True 'Do not show context menu.
End If
End Sub
Run Code Online (Sandbox Code Playgroud)
我相信现在帮助你已经太晚了,但是如果现在还为时已晚,并且遇到其他任何人.
| 归档时间: |
|
| 查看次数: |
5292 次 |
| 最近记录: |