Сортировка Gridview при изменении текста заголовка в событии RowDataBound - PullRequest
5 голосов
/ 27 сентября 2011

У меня есть GridView на моей веб-странице, чей DataSource является DataTable, который заполняется во время выполнения.Свойство AllowSorting для GridView имеет значение True.Я успешно реализовал сортировку вручную для этого GridView.

Но мне пришлось перевести веб-страницу на другие языки, для которых я использовал локальные файлы ресурсов.Я изменил текст заголовка столбцов GridView в событии RowDataBound.С тех пор я не могу отсортировать GridView.

       protected void GVSummaryTable_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.Cells.Count > 0)
    {
        //Translate header text
        if (e.Row.RowType == DataControlRowType.Header)
        {
            e.Row.Cells[0].Text = GetLocalResourceObject("GVSummaryTableName").ToString();
            e.Row.Cells[1].Text = GetLocalResourceObject("GVSummaryTableLoginLevel").ToString();
            e.Row.Cells[2].Text = GetLocalResourceObject("GVSummaryTableLoginID").ToString();
            e.Row.Cells[4].Text = GetLocalResourceObject("GVSummaryTableDate").ToString();

        }

    }

}

Что мне нужно сделать, чтобы включить сортировку столбцов?Любая помощь будет оценена.Спасибо!

Ответы [ 2 ]

9 голосов
/ 28 сентября 2011

Изменение кода на ниже решило проблему:

          if (e.Row.RowType == DataControlRowType.Header) 
        { 
            LinkButton LnkHeaderText = e.Row.Cells[1].Controls[0] as LinkButton; 
            LnkHeaderText.Text = "Name"; 
        }
0 голосов
/ 27 сентября 2011

Я не уверен, связана ли проблема с текстом заголовка, поскольку сортировка обычно выполняется с помощью выражения сортировки .Пожалуйста, убедитесь, что вы также указываете это свойство при выполнении сортировки.Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...