Question

is there some way to force the gridview's pager to show up, even when there is only one page of data on screen?

I'm building a gridview-based control with a custom pager (w/dropdown for pagesize) and everything is working fine, except when user selects pagesize that is larger than the current row count of the grid. At that point the pager disappears. I've been googling this and i think that i should be doing something in override OnRowCreated...

Custom pager is added by overriding InitializePager. I'll be glad to provide more information if required!

greets, J.Arola

Was it helpful?

Solution

Ok, that wasn't too hard :-)

Based on my initial testing the following did the trick:

GridViewRow pagerRow = (GridViewRow) this.BottomPagerRow;

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

I just added that to overridden OnPreRender, and lo, pager is visible, even when there is just one page page of data shown. Got to do some additional testing before I can be sure, though. Seems to simple to me.

OTHER TIPS

The above will work But this might be helpful also

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 works like a charm

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top