在C#中使用GridView实现多级表头可以通过嵌套GridView来实现。首先在aspx页面中定义多个GridView控件,然后通过代码在后台将它们进行嵌套。
以下是一个简单的示例:
<asp:GridView ID="gridview1" runat="server"> <Columns> <asp:TemplateField> <HeaderTemplate> <!-- 第一级表头 --> First Level Header </HeaderTemplate> <ItemTemplate> <!-- 显示数据 --> </ItemTemplate> </asp:TemplateField> <asp:TemplateField> <HeaderTemplate> <!-- 第一级表头 --> First Level Header </HeaderTemplate> <ItemTemplate> <!-- 显示数据 --> </ItemTemplate> </asp:TemplateField> </Columns></asp:GridView><asp:GridView ID="gridview2" runat="server"> <Columns> <asp:TemplateField> <HeaderTemplate> <!-- 第二级表头 --> Second Level Header </HeaderTemplate> <ItemTemplate> <!-- 显示数据 --> </ItemTemplate> </asp:TemplateField> <asp:TemplateField> <HeaderTemplate> <!-- 第二级表头 --> Second Level Header </HeaderTemplate> <ItemTemplate> <!-- 显示数据 --> </ItemTemplate> </asp:TemplateField> </Columns></asp:GridView>在后台代码中,将第二个GridView嵌套到第一个GridView的某个列中:
protected void Page_Load(object sender, EventArgs e){ if (!IsPostBack) { gridview1.DataSource = GetDataForFirstLevel(); gridview1.DataBind(); gridview1.Rows[0].Cells[0].Controls.Add(gridview2); }}在上面的示例中,gridview1和gridview2是两个GridView控件,通过将gridview2添加到gridview1的指定位置,实现了多级表头的效果。您可以根据实际需求定义更多的GridView控件来实现更多级的表头。