← 返回所有博客文章

C1DataGrid for WPF平台下最受欢迎的控件之一,对于这样的沉淀多年的控件,很多用户都非常喜欢使用它。

本系列来着重介绍使用C1DataGrid for WPF的一些基本功能以及相关技巧。

在表头展示合计信息

客户有一个需求,需要在表头展示不同类型的信息。举个例子俩说,一个公司的CEO,想要了解员工在公司的薪水合计信息。如果员工的数据已经在表格中展示,那么如何在表头展示薪水的合计信息?

本文就从C1DataGrid 的ColumnHeader表头说起,介绍如何展示信息在表头以及合计对应列的信息。

绑定C1DataGrid

1,创建一个类名为"Employee“实现INotifyPropertyChanged接口。

2.定义一个view model类来保存Employee展示在C1DataGrid的集合。

3.定义的类需要包含属性返回employees的数量和展示在表头的合计工资。

4.对于绑定模式当Employee的项目发现改变的时候,需要触发PropertyChangedEventHandler。

 

在XAML里自定义表头样式

为了展示员工数量和合计工资。我们需要textblock定义样式,并且绑定到CountOfEmployees 和TotalSalary属性。

代码参考:

<!--Employee (Names) Column : Count of Employees is displayed here-->
<my:DataGridTextColumn Header="Employees" Binding="{Binding Name}">
  <my:DataGridTextColumn.HeaderStyle>
     <Style TargetType="my:DataGridColumnHeaderPresenter">
       <Setter Property="Template">
         <Setter.Value>
           <ControlTemplate TargetType="my:DataGridColumnHeaderPresenter">
            <Grid>
             <StackPanel>
             <TextBlock Text="Employee (Names)" TextAlignment="Center" />
             <TextBlock TextAlignment="Center" Text="{Binding DataContext.CountOfEmployees, ElementName=grid, Mode=OneWay}"/>
              </StackPanel>
             </Grid>
           </ControlTemplate>
          </Setter.Value>
         </Setter>
      </Style>
   </my:DataGridTextColumn.HeaderStyle>
</my:DataGridTextColumn>

 

经过上述设置,展示如下图所示:

 

 

上述过程的WPF代码如下所示:

WPF_DataGrid_TotalOnHeader.zip (11.53 kb)

 

 

如果对表头感兴趣,还可以参考同系列文章。

C1DataGrid for WPF多表头合并教程》系列文章

添加多行头和多列头

 合并表头内容 

设置多表样式 

 

  

C1DataGrid的在线英文产品文档地址:

http://helpcentral.componentone.com/nethelp/C1datagridWPF/

如果你对C1DataGrid感兴趣,请到我们的官网下载最新版本:/download/?pid=6

如果你有疑问,可以到GCDN论坛获得技术支持:http://gcdn.grapecity.com.cn/showforum-138.html

 

C1DataGrid for WPF使用技巧》系列文章

(一)在表头展示合计信息