C# 使用sqlCommand更改动态gridview中的headertext
我创建了一个动态gridview,并通过电子邮件发送。但除了headertext之外,其他都可以。我似乎找不到如何定义headertext 我的sqlCommand显示4列,但使用时:C# 使用sqlCommand更改动态gridview中的headertext,c#,gridview,headertext,C#,Gridview,Headertext,我创建了一个动态gridview,并通过电子邮件发送。但除了headertext之外,其他都可以。我似乎找不到如何定义headertext 我的sqlCommand显示4列,但使用时: LabelTest.Text = "Init Count: " +grd.Columns.Count; 它显示,初始化计数:0 因此,我尝试执行grd.Columns[0].HeaderText=“Something”设置标题文本,但似乎没有任何效果。我还尝试将0改为3,4,5,但问题相同 错误是: Syst
LabelTest.Text = "Init Count: " +grd.Columns.Count;
它显示,初始化计数:0
因此,我尝试执行grd.Columns[0].HeaderText=“Something”
设置标题文本,但似乎没有任何效果。我还尝试将0改为3,4,5,但问题相同
错误是:
System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index at System.Collections.ArrayList.get_Item(Int32 index) at..
有什么想法吗?多谢各位
编辑:我是如何创建gridview的:
GridView grd = new GridView();
// Css style voor de gridview
grd.BorderStyle = System.Web.UI.WebControls.BorderStyle.None;
grd.GridLines = GridLines.None;
grd.RowStyle.HorizontalAlign = HorizontalAlign.Center;
grd.Columns[0].HeaderText = "Something"; //error
grd.Width = 600;
LabelTest.Text = "Init Count: " +grd.Columns.Count;
foreach (DataControlField field in grd.Columns)
{
field.ItemStyle.Width = Unit.Percentage(100 / grd.Columns.Count);
}
if (sendGrid != null)
{
grd.DataSource = sendGrid.ExecuteReader();
grd.DataBind();
}
sendGrid是我在其中选择4列的sqlCommand的名称
foreach语句只会将我的列彼此分开一点。除此之外,我没有指定任何列来设置headertext。如果您使用
数据控制字段
要添加列,请设置其
RowHeaderColumn
属性,然后将其添加到GridView。@Niklas:这是什么意思?grd是我的gridview的id<代码>GridView grd=新建GridView()代码>你不需要先绑定它然后才能计算吗?而且,这似乎解决了同样的问题:是的,我应该先这么做Niklas。我只是更改了数据库表的名称。问题也解决了。这并不是我想要做的,但还好。我会上传我的gridview代码,因为它太复杂了。除了设置网格视图的宽度外,我正在使用描述的2U中的非。