[英]How to change GridView column header text in c# web form?
我想更改GridView列标题文本,因为它会自动从MSSQL数据库放入。 我尝试了这段代码:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.Header)
{
e.Row.Cells[0].Text = "AGENT ID";
e.Row.Cells[0].Text = "NAME";
}
现在,此代码仅更改第一个“列标题”文本。 我也尝试过
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.Header)
{
e.Row.Cells[0].Text = "AGENT ID";
e.Row.Cells[1].Text = "NAME";
}
并且应用这些更改后,数据表未显示。
我哪里错了? 请尝试提供完整的代码。
您有两种方法可以做到这一点:
1-更改您选择的查询,如下所示:
Select name as [YourNewName]
2-在C#方法中设置标题文本:
DataGridViewName.Columns[1].HeaderText = "YourNewName";
您提供的代码完全可以执行。 错误可能是其他部分。 请提供完整的代码以更好地理解。
尽管您可以通过调用GridView1.HeaderRow
属性来访问Header行。
当您调用RowDataBound
事件时,每行绑定后都会触发该事件。 在这种情况下访问DataBound
事件,该事件仅在整个Gridview Bound之后触发一次。
这是完整的代码。
aspx页面:
<asp:GridView ID="GridView1" runat="server" OnDataBound="GridView1_DataBound">
后面的代码:
protected void GridView1_DataBound(object sender, EventArgs e)
{
GridView1.HeaderRow.Cells[0].Text = "AGENT ID";
GridView1.HeaderRow.Cells[1].Text = "NAME";
}
杰森(Jason)并没有错,您的方法只是需要Assign GridView1_RowDataBound to your Gridview
<asp:GridView ID="GridView1" runat="server" OnDataBound="GridView1_DataBound">
您的Event
将被调用,它将为您正常工作
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.Header)
{
e.Row.Cells[0].Text = "AGENT ID";
e.Row.Cells[1].Text = "NAME";
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.