ContextMenu на строке WPF DataGrid-событие не запускается



Я много искал по этой теме.. Я должен сказать, что я совсем новичок в WPF..



Вот мой вопрос:
У меня есть datagrid и мне нужен contextmenu в строке datagrid.



У меня есть такой код:



<Grid>  
<TabControl>
<TabItem>
<Grid>
<DataGrid Grid.Row="2" Grid.ColumnSpan="3" AutoGenerateColumns="False" HorizontalAlignment="Stretch" Margin="6,6,0,0" Name="gridErrors"
VerticalAlignment="Stretch" AlternatingRowBackground="Gainsboro" AlternationCount="2" SelectionChanged="gridErrors_SelectionChanged"
IsEnabled="False">
<DataGrid.Resources>
<ContextMenu x:Key="DataRowContextMenu">
<MenuItem Header="Detaillierte Fehlerbehandlung" />
</ContextMenu>
</DataGrid.Resources>

<DataGrid.RowStyle>
<Style TargetType="{x:Type DataGridRow}" x:Name="styleForDataRow">
<EventSetter Event="PreviewMouseLeftButtonDown" Handler="OnDataGridRow_PreviewMouseLeftButtonDown" />
<Setter Property="ContextMenu" Value="{StaticResource DataRowContextMenu}">
<!--<Setter.Value>
<ContextMenu>
<MenuItem Header="Detaillierte Fehlerbehandlung" />
</ContextMenu>
</Setter.Value>-->
</Setter>
</Style>
</DataGrid.RowStyle>

<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Number}" Header="Input Nummer" IsReadOnly="True"></DataGridTextColumn>
<DataGridTextColumn Binding="{Binding Error}" Header="Meldung" IsReadOnly="True"></DataGridTextColumn>
<DataGridTextColumn Binding="{Binding DetailInfo}" Header="Detail" IsReadOnly="True"></DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
</TabItem>
</TabControl>
</Grid>


Это работает нормально, я могу видеть контекстное меню, щелкнув правой кнопкой мыши на строке, но единственное, что событие не запускается (только когда я оставил клик в самой сетке, а не с контекстным меню)



Я был бы признателен, если бы кто-нибудь мог мне помочь.. это спасло бы мне жизнь. :- ))

Заранее большое спасибо!



Кр!

539   1  

1 ответ:

Вы, кажется, не добавили никакого обработчика событий в MenuItem, поэтому он ничего не делает.

<ContextMenu x:Key="DataRowContextMenu">
    <MenuItem Header="Detaillierte Fehlerbehandlung"
              Click="MyClickEventHandler"/>
</ContextMenu>

Comments

    Ничего не найдено.