2012-07-24 4 views
1

Я пытаюсь динамически вставить вторую строку заголовка в событие OnRowCreated от GridView. Тем не менее, я не могу заставить строку быть вставленной куда угодно, кроме первого места в индексе строки gridview. Приведенный ниже код не работает в последней строке, где заголовок фактически добавляется в сетку. Исключить исключение. Как добавить эту строку заголовка ниже уже существующую строку заголовка? Помощь очень ценится, спасибо!Добавить вторую строку заголовка в GridView НИЖЕ уже существующую строку заголовка

protected void gvwProd_RowCreated(object sender, GridViewRowEventArgs e) 
{ 
    if (e.Row.RowType == DataControlRowType.Header) 
    { 
     GridView gvw = (GridView)sender; 

     GridViewRow HeaderRow = new GridViewRow(1, 1, DataControlRowType.Header, DataControlRowState.Insert); 

     TableCell HeaderCell = new TableCell(); 
     HeaderCell.Text = "Prod Comments - TS/LID"; 
     HeaderCell.Style["font-weight"] = "bold"; 
     HeaderCell.ColumnSpan = 4; 
     HeaderCell.Wrap = false; 
     HeaderRow.Cells.Add(HeaderCell); 

     HeaderCell = new TableCell(); 
     HeaderCell.Text = "Materials Comments - TS/LD"; 
     HeaderCell.Style["font-weight"] = "bold"; 
     HeaderCell.ColumnSpan = 8; 
     HeaderCell.Wrap = false; 
     HeaderRow.Cells.Add(HeaderCell); 

     HeaderCell = new TableCell(); 
     HeaderCell.Text = "Plant Comments - TS/LID"; 
     HeaderCell.Style["font-weight"] = "bold"; 
     HeaderCell.ColumnSpan = 11; 
     HeaderCell.Wrap = false; 
     HeaderRow.Cells.Add(HeaderCell); 

     gvw.Controls[0].Controls.AddAt(1, HeaderRow); 
    } 
} 
+0

Если это ASP.NET, то вы должны помечать как таковые – Paparazzi

ответ

0

У нас была аналогичная проблема. Вы можете попробовать заливку GridView в таблицу и доступ к методу .Rows:

((Table)gvw.Controls[0]).Rows.AddAt(1, HeaderRow); 

source

Смежные вопросы