Caliburn.Micro获取DataGrid点击的单元格数据

时间:2017-01-21 11:12:49

标签: c# wpf datagrid caliburn.micro

我使用Caliburn.Micro并拥有DataGrid。要填充DataGrid,请使用DataTable

例如,我有三列:

COL ID | COL NAME | COL NAME2

如果用户点击ID列中的任何单元格,我希望触发一个事件并希望获取包含文本的单元格(以便继续进行)。

然而,我无法在互联网上找到任何东西,我对此感到非常困惑。

1 个答案:

答案 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);
    }
}