Вопрос

есть ли какой-нибудь способ заставить пейджер gridview отображаться, даже если на экране есть только одна страница данных?

Я создаю элемент управления на основе gridview с пользовательским пейджером (с выпадающим списком для pagesize), и все работает нормально, за исключением случаев, когда пользователь выбирает pagesize, который больше текущего количества строк в сетке.В этот момент пейджер исчезает.Я погуглил это и думаю, что мне следует что-то сделать в переопределении OnRowCreated ...

Пользовательский пейджер добавляется путем переопределения InitializePager.Я буду рад предоставить дополнительную информацию, если потребуется!

приветствует, Дж.Арола

Это было полезно?

Решение

Ладно, это было не слишком сложно :-)

Основываясь на моем первоначальном тестировании, следующее сделало свое дело:

GridViewRow pagerRow = (GridViewRow) this.BottomPagerRow;

if(pagerRow != null && pagerRow.Visible == false)
pagerRow.Visible = true;

Я только что добавил это к переопределенному OnPreRender, и вот, пейджер виден, даже если отображается только одна страница с данными.Однако мне нужно провести несколько дополнительных тестов, прежде чем я смогу быть уверен.Мне кажется, все очень просто.

Другие советы

Вышеупомянутое сработает Но это также может быть полезно

GridView.BottomPagerRow.Visible=true
   protected void GridView_PreRender(object sender, EventArgs e)
    {
        GridView gv = (GridView)sender;
        GridViewRow pagerRow = (GridViewRow)gv.BottomPagerRow;

        if (pagerRow != null && pagerRow.Visible == false)
            pagerRow.Visible = true;
    }

GridView.BottomPagerRow.Visible=true работает как шарм

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top