我在代码后面动态添加行,具体取决于当前在RowDataBound事件上绑定的Row。我希望添加的行与当前有界行的相同状态(Alternate或Normal)是否可能?
我正在做这样的事情,但它并不符合我的要求。我期望动态添加的行与当前行相同。但事实并非如此。
protected void gv_RowDataBound(object sender, GridViewRowEventArgs e)
{
if(e.Row.RowType == DataControlRowType.DataRow)
{
GVData data = e.Row.DataItem as GVData; // not original object just for brevity
if(data.AddHiddenRow)
{
// the row state here should be the same as the current
GridViewRow tr = new GridViewRow(e.Row.RowIndex +1, e.Row.RowIndex + 1, DataControlRowType.DataRow, e.Row.RowState);
TableCell newTableCell = new TableCell();
newTableCell.Style.Add("display", "none");
tr.Cells.Add(newTableCell);
((Table)e.Row.Parent).Rows.Add(tr);
}
}
}
答案 0 :(得分:2)
好的问题是GridView不识别display:none,这意味着该行将被隐藏,因此将其视为其交替样式的一部分。在这种情况下,您需要做的是自己明确地实现样式并将其从gridview定义中删除。
我将在短期内添加一个半例会议。