C# 为Gridview控件添加多行表头
时间: 2024-09-18 10:11:11 浏览: 210
在C#中,GridView控件通常用于显示表格数据,若需要为其添加多行表头,也就是分组标题和常规列标题,你可以使用模板列(TemplateColumns)配合DataBoundItem属性来实现。以下是基本步骤:
1. 创建一个TemplateColumn:
```csharp
TemplateField headerTemplate = new TemplateField();
```
2. 设置表头模板:
```csharp
HeaderStyle.Alignment = HorzontalAlignment.Center; // 设置对齐方式
headerTemplate.HeaderText = "Group Header"; // 分组标题
headerTemplate.ItemTemplate = new DataControlField(); // 添加数据项模板
```
3. 数据项模板中添加分组标题和普通列标题:
```csharp
DataControlField groupHeaderCell = new DataControlField();
groupHeaderCell.ControlStyle.Font.Bold = true;
groupHeaderCell.Text = "{0}", DataBinder.Eval(DataBoundItem, "GroupName"); // 显示分组名称
DataControlField dataCell = new DataControlField();
dataCell.ItemStyle.HorizontalAlign = HorizontalAlign.Left; // 普通列标题样式
dataCell.HeaderText = "{0}", DataBinder.Eval(DataBoundItem, "ColumnName"); // 展示列名
```
4. 将创建的TemplateColumn添加到GridView中:
```csharp
gridView.Columns.Add(headerTemplate);
```
5. 在绑定数据源时设置GroupBy属性,如需分组:
```csharp
DataView dv = (DataView)data网格.DataSource;
dv.Sort = "GroupName ASC";
dv.GroupBy = "GroupName";
```
6. 调整样式和布局以适应你的需求。
阅读全文