Asp.net GridView1.HeaderRow.Cells[4].Text和GridView1.Columns[4].HeaderText之间有什么区别?

Asp.net GridView1.HeaderRow.Cells[4].Text和GridView1.Columns[4].HeaderText之间有什么区别?,asp.net,gridview,headertext,Asp.net,Gridview,Headertext,我在aspx页面上放置了一个占位符服务器控件 在代码隐藏中创建栅格视图实例 将数据源设置为它 现在我想更改它的标题文本。因此,首先我尝试如下所示: GridView1.Columns[4].HeaderText = "ABC"; 标题文本未更改 然后我试着: GridView1.HeaderRow.Cells[4].Text="ABC"; 标题文本现在已更改 将GridView控件添加到占位符服务器控件: plhGridView.Controls.Add(GridView1); 我想知道为

我在aspx页面上放置了一个占位符服务器控件

在代码隐藏中创建栅格视图实例

将数据源设置为它

现在我想更改它的标题文本。因此,首先我尝试如下所示:

GridView1.Columns[4].HeaderText = "ABC";
标题文本未更改

然后我试着:

GridView1.HeaderRow.Cells[4].Text="ABC";
标题文本现在已更改

将GridView控件添加到占位符服务器控件:

plhGridView.Controls.Add(GridView1);
我想知道为什么我第一次尝试时标题文本没有改变


如果您想尝试第一次编写代码,谢谢。 您必须设置
GridView1.AllowSorting=“true”并为GridView编写排序事件

GridView1.Columns[4].HeaderText = "ABC";
如果您想要的是:

GridView1.HeaderRow.Cells[4].Text="ABC";

这将保持排序

可能是因为在以前的代码中没有将列与行绑定

GridView1.Columns[4].HeaderText = "ABC";
您可以使用RowDataBound处理程序从前面的代码执行此操作。有关详细信息,请使用以下链接:


尝试设置GridView1.Columns[4].HeaderText=“ABC”;在绑定数据源之前。