2010-01-20 4 views
1

Comment puis-je ajouter des en-têtes de colonne à un objet Silerlight ItemsControl? J'ai besoin d'un moyen rapide d'afficher une liste d'éléments qui contient également des informations d'en-tête.Silverlight ItemsControl avec ColumnHeader

+0

Définir rapidement? Facile à coder ou à haute performance? – AnthonyWJones

Répondre

0

Cela peut sembler une question simpliste, mais pourquoi ne pas utiliser le DataGrid en mode lecture seule? L'inconvénient de la grille de données est qu'elle n'utilise pas de ItemsControl virtualisé, ce qui peut nuire aux performances si vous essayez de lister des centaines d'éléments avec plusieurs colonnes.

+0

Je liste 500 éléments dans un DataGrid et mon VirtualizationMode est défini en conséquence. J'utilise également l'activation de la fonctionnalité GPU pour accélérer mon DataGrid quelle que soit la quantité de lignes. http://blogs.silverlight.net/blogs/msnow/archive/2009/04/01/silverlight-tip-of-the-day-104-how-to-enable-gpu-acceleration.aspx – Tacoman667

+0

@ Tacoman667 : Je ne savais pas DataGrid a un VirtualizationMode. Cependant, j'ai découvert qu'il existe une virtualisation de l'interface utilisateur mais pas de la virtualisation des données, ce qui fait que la situation n'est peut-être pas si mauvaise. Mon test était sur SL 4 qui est toujours bêta et donc probablement pas une bonne mesure de la performance de toute façon. – AnthonyWJones

0

Rien n'est intégré au ItemsControl lui-même, mais rien ne vous empêche de créer un contrôle personnalisé doté de ce type de fonctionnalité. C'est un peu de travail à l'avance pour la possibilité de réutiliser plus tard si c'est un morceau d'interface utilisateur dont vous avez besoin fréquemment. L'ajout de trop de fonctionnalités est peut-être trop compliqué; Si vous avez besoin du tri des colonnes ou de la génération automatique des colonnes et des en-têtes, vous trouverez peut-être qu'un DataGrid (comme Anthony l'a déjà souligné) serait un moyen plus rapide d'obtenir beaucoup de fonctionnalités gratuitement.

Questions connexes