2009-06-29 10 views
13

jest jakiś sposób, aby wymusić wyświetlanie pager gridview, nawet jeśli na ekranie jest tylko jedna strona danych?Wymuszenie pager ASP.NET GridView, aby pokazać

Buduję sterowanie oparte na gridviewie z niestandardowym pageriem (w/dropdown dla stronicowania) i wszystko działa poprawnie, z wyjątkiem sytuacji, gdy użytkownik wybiera wielkość strony, która jest większa niż bieżąca liczba wierszy siatki. W tym momencie pager znika. Przeszukałem to i myślę, że powinienem coś zrobić w trybie nadpisania OnRowCreated ...

Niestandardowy pager jest dodawany przez przesłanianie InitializePager. Chętnie udzielę więcej informacji w razie potrzeby!

Greets, J.Arola

Odpowiedz

20

Ok, to nie było zbyt trudne :-)

oparciu o moje początkowe badania następuje wystarczyły:

GridViewRow pagerRow = (GridViewRow) this.BottomPagerRow; 

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

Właśnie dodałem aby przesłonić OnPreRender, a lo, pager jest widoczny, nawet jeśli jest tylko jedna strona strony z danymi. Muszę jednak przeprowadzić dodatkowe testy, zanim będę pewien. Wydaje mi się to proste.

9

Powyższy zadziała Ale może to być pomocne również

GridView.BottomPagerRow.Visible=true 
2

GridView.BottomPagerRow.Visible = true działa jak czar

2
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; 
    }