使用 HTML 或 C# 更改 GridView 中的列名
Posted
技术标签:
【中文标题】使用 HTML 或 C# 更改 GridView 中的列名【英文标题】:Changing the column name in GridView using HTML or C# 【发布时间】:2011-12-03 22:48:23 【问题描述】:关键是我在我的项目中使用了GridView
。
我已经使用SQLConn
、SQlDataAdapter
和DataSet
将值分配给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 中的列名的主要内容,如果未能解决你的问题,请参考以下文章