2009-10-22 8 views
0

J'ai un Gridview qui est lié à un tableau d'objets, avec une tonne de propriétés attachées à eux. La grille aurait besoin d'être trop large pour les afficher tous en même temps (et aussi écrasante pour l'utilisateur), donc j'aimerais avoir des boutons de lien qui reviennent sur le serveur et montrent différents ensembles de colonnes (tous à partir de ce même ensemble de données d'objets), en fonction de l'onglet sur lequel l'utilisateur a cliqué.Jeux de grilles et de colonnes

Dans GridView, j'utilise TemplateFields pour lier les colonnes aux propriétés de l'objet. Quelle serait la meilleure façon de mettre en œuvre les différentes colonnes et vues?

  1. Dois-je lier simplement toutes les données, puis sur l'événement après retour pour une presse à onglet, afficher et masquer uniquement les colonnes dont j'ai besoin de cet onglet? Cela semble être le cas parce que cela lierait beaucoup plus de données que ce que je montre, que cela pourrait être inutilement lent.

  2. Dois-je créer dynamiquement les colonnes avant la liaison et créer uniquement les colonnes et lier les données pour les colonnes que je veux afficher? Quel est le taux de performance que la page prendrait pour créer dynamiquement les colonnes chaque fois en fonction de l'onglet pressé?

Merci!

Répondre

1

Si vous avez autant de colonnes, vous voudrez peut-être envisager d'utiliser un contrôle différent au lieu d'une grille. Un DetailsView avec pagination rendra probablement mieux et sera plus facile à gérer pour les utilisateurs. Pour répondre à votre question, cependant, je ne crois pas que l'option 1 serait un gros problème de performance. Et je crois que cette option serait moins ardue que l'option 2. C'est surtout mon opinion, cependant.

+0

Merci, j'ai implémenté la méthode dans # 1 et jusqu'à présent ça marche plutôt bien. J'apprécie vos conseils! – kazzamalla

Questions connexes