如何设置gridviewheadertemplate标签控件的数据表头列字段



我想将数据表标题列字段设置为Gridview的Label controls Text属性HeaderTemplate

我不确定我理解你的问题,但如果你想从数据源绑定到TemplateField的HeaderTemplate和ItemTemplate中的标签,你可以这样做:

<asp:TemplateField HeaderText="YourField">
    <HeaderTemplate>
        <asp:Label runat="server" Text='<%# Eval("header_database_field") %>'/>
    </HeaderTemplate>
    <ItemTemplate>
        <asp:Label runat="server" Text='<%# Eval("content_database_field") %>'/>
    </ItemTemplate>
</asp:TemplateField>

header_database_fieldcontent_database_field从数据库的字段,您希望绑定。

如果您想将数据表的列名分配给TemplateField的标签之一,您可以在RowDataBound事件期间以编程方式执行类似的操作,尽管我不确定为什么要这样做:

DataTable datatable = new DataTable(); // your dt
protected void gv_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if(e.Row.RowType == DataControlRowType.DataRow)
    {
        ((Label)e.Row.Cells[0].Controls[1]).Text = datatable.Columns[0].ColumnName;
    }
}

用你的DataTable替换datatable,并修改索引来引用你的Cell/Label(s)/ColumnNames。

最新更新