如何判断所选的datacell是数据网格的标题还是其一部分

时间:2012-11-27 16:24:29

标签: wpf datagrid xceed-datagrid

我的WPF应用程序中有一个Xceed数据网格,每个单元格都有OnClick个事件。但是,我希望能够处理该事件,具体取决于单元格是列标题还是单元格只是存储数据。如果有人对此有任何建议或经验,我将非常感激。

2 个答案:

答案 0 :(得分:1)

<Window.Resources>
<Style TargetType="xcdg:DataCell">
    <EventSetter Event="PreviewMouseLeftButtonDown" Handler="dataCellMouseLeftButtonDown"/>
</Style>
<Style TargetType="xcdg:ColumnManagerCell">
    <EventSetter Event="PreviewMouseLeftButtonDown" Handler="colManagerMouseLeftButtonDown"/>
</Style>
</Window.Resources>

<xcdg:DataGridControl ItemsSource="{Binding}"/>


 private void dataCellMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
 {
    MessageBox.Show("Left mouse button down on Cell");
 }

 private void colManagerMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
 {
   MessageBox.Show("Left mouse button down on Column manager cell");
 }

注意如果将预览事件替换为普通事件,则数据网格不会触发事件。它将自己处理这些鼠标事件(开始内联编辑和排序)。

答案 1 :(得分:0)

您如何设置活动?您可以使用不同的样式和事件来定位datagridrow,datacell,columnheader单元格。但是,您必须注意Xceed控件处理多个事件的事实,有时您必须使用事件的预览版本。