我使用Caliburn.Micro
并拥有DataGrid
。要填充DataGrid
,请使用DataTable
。
例如,我有三列:
COL ID | COL NAME | COL NAME2
如果用户点击ID
列中的任何单元格,我希望触发一个事件并希望获取包含文本的单元格(以便继续进行)。
然而,我无法在互联网上找到任何东西,我对此感到非常困惑。
答案 0 :(得分:1)
您可以处理DataGridCell的PreviewMouseLeftButtonDown事件并访问其Content属性。以下代码示例应该为您提供想法。
<DataGrid>
<DataGrid.CellStyle>
<Style TargetType="DataGridCell">
<EventSetter Event="PreviewMouseLeftButtonDown" Handler="dg_PreviewMouseLeftButtonDown" />
</Style>
</DataGrid.CellStyle>
</DataGrid>
private void dg_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
DataGridCell cell = sender as DataGridCell;
TextBlock tb = cell.Content as TextBlock;
if (tb != null)
{
MessageBox.Show(tb.Text);
}
}