Forcer l'affichage du pageur ASP.NET GridView
-
21-08-2019 - |
Question
existe-t-il un moyen de forcer l'affichage du pager de gridview, même s'il n'y a qu'une page de données à l'écran?
Je construis un contrôle basé sur gridview avec un pager personnalisé (avec une liste déroulante pour la taille de la page) et tout fonctionne correctement, sauf lorsque l'utilisateur sélectionne une taille de page supérieure au nombre de lignes actuel de la grille. À ce stade, le téléavertisseur disparaît. Je suis allé sur Google et je pense que je devrais faire quelque chose pour remplacer OnRowCreated ...
Le pager personnalisé est ajouté en surchargeant InitializePager. Je serai heureux de fournir plus d'informations si nécessaire!
salue, J.Arola
La solution
Ok, ce n'était pas trop difficile: -)
D'après mes premiers tests, voici ce qui s'est passé:
GridViewRow pagerRow = (GridViewRow) this.BottomPagerRow;
if(pagerRow != null && pagerRow.Visible == false)
pagerRow.Visible = true;
Je viens d’ajouter que pour remplacer OnPreRender, et pag, le pageur est visible, même s’il n’ya qu’une page de données. Je dois faire des tests supplémentaires avant que je puisse être sûr, cependant. Cela me semble simple.
Autres conseils
Ce qui précède fonctionnera Mais cela pourrait être utile aussi
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 fonctionne comme un charme