如果radgridview没有行,我需要禁用上下文菜单。目前,如果没有行,我可以右键单击网格上的任意位置,将显示上下文菜单。
我尝试了下面的代码但是得到NullReferenceException试图设置可见性是否为零。
dgChosenItems.DataContext = theLines.allLines
If theLines.allLines.Count = 0 Then
dgChosenItems.ContextMenu.Visibility = Visibility.Collapsed
Else
dgChosenItems.ContextMenu.Visibility = Visibility.Visible
End If
感谢您提供任何帮助或建议。
编辑: 这是一个xaml的片段。还有什么需要补充的吗?
<telerik:RadGridView x:Name="dgChosenItems" FontSize="16" ScrollViewer.HorizontalScrollBarVisibility="Visible" ScrollViewer.VerticalScrollBarVisibility="Visible" ItemsSource="{Binding}" AutoGenerateColumns="False" ShowGroupPanel="False" ColumnWidth="*" Margin="0,478,10,0" >
<telerik:RadContextMenu.ContextMenu >
<telerik:RadContextMenu Background="LightGray" Opened="dgChosenItemsContextMenu_Opened" >
<telerik:RadContextMenu.Items>
<telerik:RadMenuItem x:Name="menuAdd" Header="Add Mod" Click="AddMod" >
答案 0 :(得分:0)
我为上下文菜单指定了一个名称,并根据网格中的行数将其设置为可见或不可见。到目前为止,它提供了所需的功能。如果有更好的方法,请告知。
Private Sub dgChosenItems_PreviewMouseRightButtonDown(sender As Object, e As MouseButtonEventArgs) Handles dgChosenItems.PreviewMouseRightButtonDown
Dim theLines As New allOrderDetailLines
If theLines.allLines.Count = 0 Then
mnuChosenItems.Visibility = Visibility.Collapsed
Else
mnuChosenItems.Visibility = Visibility.Visible
End If