Как вставить пустую строку между строками gridview, содержащими элементы управления
Всем Привет,
Я пытаюсь добавить пустые строки между строками gridview. Существующие строки также содержат элементы управления textbox. При первоначальном запросе get страница отображается правильно с соответствующим значением в соответствующих текстовых полях. Но при нажатии кнопки вне gridview значение textbox первой строки сетки после вставленной новой строки смещается в новую строку в элементе управления textbox. При вставке новой строки не было элемента управления textbox.
public void AddNewRow(object sender, GridViewRowEventArgs e) { GridView GridView1 = (GridView)sender; GridViewRow NewTotalRow = new GridViewRow(0, 0, DataControlRowType.EmptyDataRow, DataControlRowState.Insert); NewTotalRow.Font.Bold = true; NewTotalRow.BackColor = System.Drawing.Color.Blue; TableCell HeaderCell = new TableCell(); HeaderCell.Height = 25; HeaderCell.HorizontalAlign = HorizontalAlign.Center; HeaderCell.ColumnSpan = 10; HeaderCell.ForeColor = System.Drawing.Color.White; HeaderCell.Text = "1st Level Subordinates"; NewTotalRow.Cells.Add(HeaderCell); GridView1.Controls[0].Controls.AddAt(e.Row.RowIndex + rowIndex, NewTotalRow); rowIndex++; } protected void cmdBtn_saveSubmit_Click(object sender, CommandEventArgs e) { foreach (GridViewRow gvRow in grid_score.Rows) { if (gvRow.RowType != DataControlRowType.EmptyDataRow) { TextBox txtscore = gvRow.Cells[7].FindControl("txtbox") as TextBox; string score = txtscore.Text.ToString(); if (score =="") { System.Web.UI.ScriptManager.RegisterStartupScript(this, GetType(), "displayalertmessage", "alert('alert');", true); return; } } } }
Что я уже пробовал:
здесь после оператора return, когда страница появляется снова, форматирование emptydatarow удаляется. Кроме того, при проверке emptydatarow он отображается как обычный datarow, а значение textbox чуть ниже emptydatarow смещается в textbox в пустой строке.