asp.net GridView Пейджер исчезает! - PullRequest
5 голосов
/ 30 июня 2009

У меня есть сетевое представление данных, использующее пейджинг, оно прекрасно работает, и у меня есть выпадающий список, который позволяет пользователю изменять свойство PageSize - 10, 15, 25, 50, 100, 1000 и т. Д.

Когда я выбираю значение для PageSize, которое больше, чем количество строк в сетке, пейджер исчезает как сверху, так и снизу сетки.

У кого-нибудь есть идеи, почему?

Я использую пользовательский элемент PageTemplate на странице aspx.

Приветствия

Олли

Ответы [ 4 ]

8 голосов
/ 30 июня 2009

Поведение - это дизайн. Вы можете сделать так, чтобы он оставался видимым, установив свойство Visible строки пейджера (доступ к которому осуществляется с помощью свойства TopPagerRow или BottomPagerRow) в событии OnDataBound сетки. Например:

protected void grid_DataBound(object sender, EventArgs e)
{
    grid.TopPagerRow.Visible = true;
}
5 голосов
/ 28 июля 2010

Я обнаружил, что это происходит, если вы пытаетесь сделать столбец невидимым. например, если вы используете:

e.Row.Cells [0] .Visible = false;

Вы можете сделать пейджер невидимым.

Вы должны использовать этот код вместо:

if (e.Row.RowType == DataControlRowType.DataRow || e.Row.RowType == DataControlRowType.Header) { e.Row.Cells [0] .Visible = false; }

0 голосов
/ 31 января 2015

Проблема связана с дизайном, поэтому, пожалуйста, перейдите в Свойства представления сетки Rad и просто измените свойство: Style -> PagerStyle -> AlwaysVisible To (True)

0 голосов
/ 30 июня 2009

Когда количество страниц - одна, нет необходимости показывать Следующая / Предыдущая или другие страницы. Звучит как нормальное поведение для меня.

...