В чем разница между GridView1.HeaderRow.Cells[4].Text и GridView1.Columns[4].HeaderText?

Я поместил серверный элемент управления Placeholder на страницу aspx.

создать экземпляр Grid-view в коде позади.

установить источник данных для него

Теперь я хочу изменить его заголовок text.so сначала я попробовал, как указано ниже:

GridView1.Columns[4].HeaderText = "ABC";

текст заголовка не изменился.

тогда я попробовал с:

GridView1.HeaderRow.Cells[4].Text="ABC";

текст заголовка изменился.

Добавлен элемент управления GridView в серверный элемент управления PlaceHolder:

plhGridView.Controls.Add(GridView1);

Я хочу знать, почему текст заголовка не изменился при первой попытке?

Спасибо

2 ответа

Решение

Может быть, вы не связываете столбцы со своими строками в своем прежнем коде

GridView1.Columns[4].HeaderText = "ABC";

Вы можете сделать это из предыдущего кода, используя обработчик RowDataBound, для подробностей используйте следующую ссылку:

ASP.NET: когда и как динамически изменять headerText Gridview в коде позади?

Если вы хотите попробовать первый раз код. Вы должны установить GridView1.AllowSorting="true"; и написать событие OnSorting для GridView.

GridView1.Columns[4].HeaderText = "ABC";

Если то, что вы хотите, это:

GridView1.HeaderRow.Cells[4].Text="ABC";

Это сохранит сортировку.

Другие вопросы по тегам