У меня есть DataGrid WPF
<DataGrid AutoGenerateColumns="False" Name="dataGrid1" IsReadOnly="True" >
<DataGrid.Columns>
<DataGridTextColumn Header="Site" Binding="{Binding Site}" Width="150" />
<DataGridTextColumn Header="Subject" Binding="{Binding Subject}" Width="310" />
</DataGrid.Columns>
<DataGrid.ContextMenu>
<ContextMenu>
<MenuItem Header="Delete" Click="Context_Delete">
<MenuItem.Icon>
<Image Width="12" Height="12" Source="Images/Delete.png" />
</MenuItem.Icon>
</MenuItem>
</ContextMenu>
</DataGrid.ContextMenu>
</DataGrid>
У меня есть обработчик события click:
private void Context_Delete(object sender, System.EventArgs e) { }
Как мне получить строку, на которой находилось контекстное меню до щелчка? Объектом sender
является System.Windows.Controls.MenuItem
, а не DataGridRow
. Как получить DataGridRow
, где было нажато контекстное меню. (Я установил DataGrid.ItemSource
в код за файлом.)