使用 HTML 或 C# 更改 GridView 中的列名

Posted

技术标签:

【中文标题】使用 HTML 或 C# 更改 GridView 中的列名【英文标题】:Changing the column name in GridView using HTML or C# 【发布时间】:2011-12-03 22:48:23 【问题描述】:

关键是我在我的项目中使用了GridView。 我已经使用SQLConnSQlDataAdapterDataSet 将值分配给GridView

GridView1.DataSource=ds;
GridView1.DataBind();

关键是输出显示了对最终用户不友好的表的列名。

我怎样才能改变它?

【问题讨论】:

【参考方案1】:

使用自己的GridView列,可以指定gridview的Header文本。转到 GridView 的属性-->列-->添加列并将 DataBound 设置为 DB 列名称和标题文本属性。

并且不要忘记将网格视图的 AutoGeneratedColumns 属性设置为 false

【讨论】:

谢谢..完美..这就是我想要的【参考方案2】:

您可以按序号位置更改列名 - 尽管如果列重新排序,这不是一种可靠的方式:

grd.HeaderRow.Cells(iCount).Text = "my column name"

标题单元格有一个(几乎不为人知?很少使用?)名为 AccessibleHeaderText 的属性

<asp:TemplateField HeaderText="Default Name" AccessibleHeaderText="MY_FIXED_KEY_VALUE">
     <ItemTemplate>
         <asp:Label ID="CustRef" runat="server" Text='<%# Bind("MyField") %>'></asp:Label>
     </ItemTemplate>
</asp:TemplateField>

它被指定用于页面自动化:

For iCount = 0 To grd.HeaderRow.Cells.Count - 1
     Dim oCol As DataControlField = grd.Columns(iCount)
     If String.Compare(oCol.AccessibleHeaderText, "MY_FIXED_KEY_VALUE", True) = 0 Then
           grd.HeaderRow.Cells(iCount).Text = "my column name"
           Exit For
     End If
Next

会很健壮。

当然,您可以使用 case 或其他任何东西在列中循环

HTH

【讨论】:

以上是关于使用 HTML 或 C# 更改 GridView 中的列名的主要内容,如果未能解决你的问题,请参考以下文章

在 Asp.Net c# 中更新 gridview

GridView Webform c#中的行颜色更改

使用ajax c#自动刷新带有更新数据的Gridview?

如何使用 C# asp.net 在 GridView 中添加文件上传日期和/或时间?

更改 GridView 中列的标题文本

GridView 中的 C# HTML 标签