C# Gridview中标题的合并
我在Gridview中遇到了一个问题,如果Gridview没有记录,我无法合并标题,但是如果Gridview包含记录,则标题正在合并 这是我用来在Gridview中合并标题的代码C# Gridview中标题的合并,c#,gridview,C#,Gridview,我在Gridview中遇到了一个问题,如果Gridview没有记录,我无法合并标题,但是如果Gridview包含记录,则标题正在合并 这是我用来在Gridview中合并标题的代码 protected void grdWorkExperience_RowCreated(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.Header) {
protected void grdWorkExperience_RowCreated(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.Header)
{
GridView oGridView = (GridView)sender;
GridViewRow oGridViewRow = new GridViewRow(0, 0, DataControlRowType.Header, DataControlRowState.Insert);
TableCell oTableCell = new TableCell();
oTableCell.Text = string.Empty;
oTableCell.ColumnSpan = 2;
oTableCell.BorderColor = System.Drawing.Color.White;
oGridViewRow.Cells.Add(oTableCell);
oTableCell = new TableCell();
oTableCell.Text = "Inclusive Dates(mm/dd/yyyy)";
oTableCell.ColumnSpan = 2;
oTableCell.Font.Bold = true;
oTableCell.Font.Size = 9;
oTableCell.Font.Name = "Verdana";
oTableCell.HorizontalAlign = HorizontalAlign.Center;
oTableCell.BackColor = System.Drawing.Color.FromArgb(0x33, 0x66, 0xCC);
oTableCell.ForeColor = System.Drawing.Color.White;
oTableCell.BorderColor = System.Drawing.Color.Gray;
oGridViewRow.Cells.Add(oTableCell);
oTableCell = new TableCell();
oTableCell.BorderColor = System.Drawing.Color.White;
oTableCell.ColumnSpan = 13;
oGridViewRow.Cells.Add(oTableCell);
oGridView.Controls[0].Controls.AddAt(0, oGridViewRow);
}
}
我将该函数放在Gridview的onRowCreated事件中
即使Gridview没有记录,我应该如何合并标题?将代码从
OnRowCreated
事件移动到Window/Control/Page
的Load
事件。我尝试了它,但它不起作用。我更改此代码“oGridView.Controls[0]。Controls.AddAt(0,oGridViewRow);“到此”grdWorkExperience.Controls[0].Controls.AddAt(0,oGridViewRow);“我将oGridView更改为grdWorkExperience,这是gridview的名称,我更改的代码行正在产生此类错误:“指定的参数超出了有效值的范围。参数名称:index”如果我在绑定gridview后将代码放入页面的加载事件中,gridview就会出现故障。是否还有其他方法@TilakYou应该向数据绑定源添加行。GridViewRowsCollection
是不可变的,无法修改。你是什么意思?需要我的数据源始终有一条记录?或者,合并h艾德不会工作吗?