У меня есть asp: GridView, который мне нужен, чтобы отобразить 2 строки заголовка ... Первый для дней (например, понедельник, вторник и т. Д.), А второй для отображения «Нормальное время» и «Сверхурочные».
Я сделал это путем динамического добавления кода в gridview_RowDataBound, проблема в том, что когда страница перезагружается / выполняет обратную передачу, то добавленная мной строка исчезает, и GridView больше не запускает функции JavaScript, используемые на нем. Это только иногда кажется, хотя, я понятия не имею, почему.
Страница в основном представляет собой форму ввода расписания. Пользователь выбирает дату из средства выбора даты (затем страница перезагружается, и это, когда кажется, что-то сходит с ума).
Вот как теперь выглядит моя сетка:
![enter image description here](https://i.stack.imgur.com/YmUIm.jpg)
Используя следующий код:
Table tbl = e.Row.Parent as Table;
var row = new GridViewRow(0, 0, DataControlRowType.Header, DataControlRowState.Normal);
TableCell cell = new TableCell();
cell.Text = "";
cell.ColumnSpan = 3;
row.Cells.Add(cell);
cell = new TableCell();
cell.Text = "Monday";
cell.ColumnSpan = 2;
cell.HorizontalAlign = HorizontalAlign.Center;
row.Cells.Add(cell);
cell = new TableCell();
cell.Text = "Tuesday";
cell.ColumnSpan = 2;
cell.HorizontalAlign = HorizontalAlign.Center;
row.Cells.Add(cell);
cell = new TableCell();
cell.Text = "Wednesday";
cell.ColumnSpan = 2;
cell.HorizontalAlign = HorizontalAlign.Center;
row.Cells.Add(cell);
cell = new TableCell();
cell.Text = "Thursday";
cell.ColumnSpan = 2;
cell.HorizontalAlign = HorizontalAlign.Center;
row.Cells.Add(cell);
cell = new TableCell();
cell.Text = "Friday";
cell.ColumnSpan = 2;
cell.HorizontalAlign = HorizontalAlign.Center;
row.Cells.Add(cell);
cell = new TableCell();
cell.Text = "Saturday";
cell.ColumnSpan = 2;
cell.HorizontalAlign = HorizontalAlign.Center;
row.Cells.Add(cell);
cell = new TableCell();
cell.Text = "Sunday";
cell.ColumnSpan = 2;
cell.HorizontalAlign = HorizontalAlign.Center;
row.Cells.Add(cell);
cell = new TableCell();
cell.Text = "";
cell.ColumnSpan = 2;
row.Cells.Add(cell);
tbl.Rows.AddAt(tbl.Rows.Count - 1, row);
Но я хотел бы знать, могу ли я в любом случае заставить сетку на изображении выглядеть таким образом с HTML вместо того, чтобы делать это с выделенным кодом, поскольку это, кажется, нарушает сетку больше, чем что-либо еще.
Спасибо
(Я должен добавить, что строки заголовка 'Normal' / 'OT' устанавливаются в html с использованием:
<asp:TemplateField HeaderText="OT" HeaderStyle-HorizontalAlign="Center">