在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控件來實現更多級的表頭。