实现在GridView中新增行

    技术2022-05-11  36

            实现在GridView的任意位置插入一行,可实现分隔(如BBS中的置顶与普通的分隔),实现分类,如增加一行统计标题行和统计数据行等等。        下面带注释的详细代码 

    // 创建一个GridView的一个分隔行(根据DataControlRowType来设置)         GridViewRow rowSeparator  =   new  GridViewRow( 0 0 , DataControlRowType.Separator, DataControlRowState.Normal);         // 或实现一个数据行         // GridViewRow rowSeparator = new GridViewRow(0, 0, DataControlRowType.DataRow, DataControlRowState.Normal);         // 设置行的底色         rowSeparator.BackColor  =  System.Drawing.Color.White;         // 设置单元格集         // 可以根据实际情况设置,我在这儿是根据RowDataBound事件(e参数)来设置的         TableCellCollection cells  =  e.Row.Cells;         // 设置单元格,根据实际情况增加,我这儿是增加一个跨所有列的行         TableCell separatorCell  =   new  TableCell();         // 根据GridView的第一列的显示情况设置单元格和跨列数          if  (gvMain.Columns[ 0 ].Visible  ==   true )        {            separatorCell.ColumnSpan  =  cells.Count;        }         else         {            separatorCell.ColumnSpan  =  cells.Count  -   1 ;        }         // 单元格的对齐         separatorCell.HorizontalAlign  =  HorizontalAlign.Right;         // 单元格的背景色         separatorCell.BackColor  =  System.Drawing.Color.FromArgb( 226 226 226 );         // 单元格的高度         separatorCell.ControlStyle.Height  =   5 ;         // 在单元格集中增加单元格控件         rowSeparator.Cells.Add(separatorCell);         // 设置GridView行的可见性         rowSeparator.Visible  =   true ;         // 在GridView中的相应行插入行         gvMain.Controls[ 0 ].Controls.AddAt(e.Row.RowIndex  +   1 , rowSeparator);

    这是一个基本的代码,您可以使用更多的属性并扩展它的应用。


    最新回复(0)