Add Gridview Row AFTER Header

前端 未结 3 1506
旧时难觅i
旧时难觅i 2021-01-13 01:34

i\'m trying to add a new headerrow to a Gridview. This row should appear below the original headerrow.

As far as I know I have two events to choose from:

1.)

3条回答
  •  不要未来只要你来
    2021-01-13 01:50

    Nice work guys, I used your technique for grouping my AJAX enabled gridview, and I searched for a long, long time. Cheers.

    protected override void PrepareControlHierarchy()
    {
        if (GroupColumns)
        {
            #region Group Column
    
            Table table = (Table)Controls[0];
    
            string lastValue = string.Empty;
            foreach (GridViewRow gvr in this.Rows)
            {
                string currentValue = gvr.Cells[GroupColumnIndex].Text;
    
                if (lastValue.CompareTo(currentValue) != 0)
                {
                    // there's been a change in value in the sorted column
                    int rowIndex = table.Rows.GetRowIndex(gvr);
    
                    // Add a new sort header row
                    GridViewRow sortRow = new GridViewRow(rowIndex, rowIndex, DataControlRowType.DataRow, DataControlRowState.Normal);
    
                    TableCell sortCell = new TableCell();
                    TableCell blankCell = new TableCell();
    
                    sortCell.ColumnSpan = this.Columns.Count - 1;
                    sortCell.Text = string.Format("{0}", currentValue);
    
                    blankCell.CssClass = "group_header_row";
                    sortCell.CssClass = "group_header_row";
    
                    // Add sortCell to sortRow, and sortRow to gridTable
                    sortRow.Cells.Add(blankCell);
                    sortRow.Cells.Add(sortCell);
                    table.Controls.AddAt(rowIndex, sortRow);
    
                    // Update lastValue
                    lastValue = currentValue;
                }
            }
    
            #endregion
        }
    
        HideColumns();
    
        base.PrepareControlHierarchy();
    } 
    

提交回复
热议问题