web-dev-qa-db-fra.com

GridView: Comment définir le nombre de lignes à afficher

Je voudrais que ma vue de grille affiche seulement 3 lignes des idées sur la façon dont je peux y parvenir?

Merci

10
Jean Claude Abela

Activer la pagination et définir le PageSize du GridView sur 3.

Comment: activer la pagination par défaut dans le contrôle de serveur Web GridView

Si vous souhaitez restreindre l'affichage de 3 lignes sans pagination à votre GridView, vous devez utiliser une variable DataSource avec seulement 3 enregistrements (p. Ex. Via SQL -TOP- Clause ou Limit dans MySQL ou Take(3) dans LINQ.

19
Rango

Si vous pouvez limiter le nombre d'enregistrements dans votre requête, c'est la meilleure approche.

Cependant, si vous ne pouvez pas les limiter dans la requête ... voici une autre approche:

  1. Définissez "allowpaging=true" et "pagesize=X" (modifiez le nombre de lignes que vous souhaitez voir visibles).
  2. Attribuez un pagerstyle à une classe CSS personnalisée.

    <pagerstyle cssclass = "hidden" />

  3. Définissez cette classe personnalisée sur:

    .hidden { visibilité: masqué; affichage: aucun; }

Votre grille utilisera maintenant la logique de pagination, mais les contrôles du pager sont masqués.

Ce n'est pas le plus propre/le plus élégant, mais ça marche.

5
Eric Burdo

place AllowPaging = "True" et PageSize = "3" dans GridView

1
user8102357

allez voir et cliquez sur la grille et une petite superposition s'ouvre vous permettant (vous demandant) d'entrer un numéro pour la colonne. puis prévisualiser et cliquez sur Enregistrer

0
user529481

Je vais rester simple et veiller à ce que votre source de données ne fournisse que les trois lignes de données que vous devez afficher.

Sinon, vous pouvez définir la propriété .Visible de toutes les Rows sur false, à l'exception de Rows[0] à Rows[2].

0
Widor

2 façons que je peux penser à .....

  1. Obtenez votre jeu de données à partir de votre requête.
  2. Créez des colonnes et ajoutez-les à votre gridview ...
  3. Ajouter 3 lignes sur un clic de bouton et garder l'index statique
  4. Sur le même clic, effacez votre grille et ajoutez les trois prochaines lignes ....

OR

Utilisez la pagination !!!!!!

0
kingpin

vous pouvez utiliser Repeater à la place comme suit.

<asp:Repeater ID="Repeater2" runat="server" >
<HeaderTemplate>
<table class="center">
    <tr>

<% # If ((Container.ItemIndex <> 0 Et aussi Container.ItemIndex Mod 4 = 0), "", String.Empty)%> 'PostBackUrl =' <% # Container.DataItem ("url")%> '>

</asp:Repeater>
0
Hasan Zafari