我创建了一个动态网格视图,我通过电子邮件发送。但是除了headertext之外的所有作品。我似乎无法找到如何定义headertext。
我的sqlCommand显示4列,但是当我使用时:
LabelTest.Text = "Init Count: " +grd.Columns.Count;
显示,Init Count:0
所以我试图设置grd.Columns[0].HeaderText = "Something";
来设置headertext但似乎没什么用。我也尝试将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是我的sqlCommand的名称,我在其中选择了4列。
foreach语句只会使我的列彼此分开一点。除此之外,我没有指定任何列来设置headertext。
答案 0 :(得分:0)
如果您使用的是
的DataControlField
添加列设置其
RowHeaderColumn
属性然后将其添加到GridView。