c# - 更改 GridView 中列的标题文本

标签 c# asp.net gridview

我有一个 GridView,我使用 C# 代码以编程方式绑定(bind)它。 问题是,列直接从数据库获取标题文本,这在网站上显示时看起来很奇怪。所以基本上,我想以编程方式修改列标题文本。 我已经尝试过以下,

testGV.Columns[0].HeaderText = "Date";

this.testGV.Columns[0].HeaderText = "Date";

似乎没有给我正确的结果。

最佳答案

您应该在 GridView 的 RowDataBound 中执行此操作为每个 GridViewRow 数据绑定(bind)后触发的事件。

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.Header)
    {
        e.Row.Cells[0].Text = "Date";
    }
}

或者你可以设置AutogenerateColumnsfalse 并在 aspx 上以声明方式添加列:

<asp:gridview id="GridView1" 
  onrowdatabound="GridView1_RowDataBound"
  autogeneratecolumns="False"
  emptydatatext="No data available." 
   runat="server">
    <Columns>
         <asp:BoundField DataField="DateField" HeaderText="Date" 
            SortExpression="DateField" />
    </Columns>
</asp:gridview>

关于c# - 更改 GridView 中列的标题文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13013241/

相关文章:

C# 转换回 var 类型?

c# - FolderBrowserDialog - 发生 Win32Exception - 参数不正确

c# - Bot Framework - 基本的新 bot 项目抛出 HTTP 错误 403.14 - 在本地调试时禁止?

c# - Entity Framework 将整数数组传递给端点

ASP.NET:保护 Github 中的配置文件

php - 在 CGridView 中显示另一个模型的属性

c# - 如何获取 Generic.Xaml 中自定义控件的事件处理程序

c# - 具有动态列的 LINQ Pivot

c# - 在弹出窗口中获取选定的行以进行编辑和更新

ios - 启用水平滚动和分页的 UICollectionViewLayout