Quels sont les principaux avantages de l'utilisation d'un contrôle DataGrid sur l'utilisation d'une ListView? Quand devrait-on utiliser chacun d'eux?Listview vs datagrid
Répondre
J'ai abandonné ListView pour le DataGrid dans .Net 4, car il est plus simple de modéliser les colonnes.
La mise en page est également plus sensible, et je n'ai pas besoin de me souvenir de définir HorizontalContentAlignment sur Stretch pour que le contenu de la cellule couvre la cellule. Une autre fonctionnalité intéressante est l'édition de modèles sur le DataGrid, ce qui me soulage de devoir utiliser un CellTemplateSelector pour obtenir un contrôle différent lors de l'édition de la cellule.
Quelques points à considérer que Colin Eber ont déclaré dans DataGrid vs GridView discussion:
- ListView (GridView) est un contrôle en lecture seule hors-la-box.The solution standard serait de synchroniser la liste avec a « détails View » composés de TextBoxes
- la grille de données permet la modification sur place des données
- la grille de données effectue les modifications transaction (la ligne est traitée comme un atome)
- Le soutien DataGrid génération colonne auto
- Le DataGrid a un élément RowDetails (si vous aimez ce genre de chose!)
- Le DatGrid supporte à peu près tout le ListView fait, plusieurs modes de sélection, style, etc ...
Et une autre importante:
- Le DataGrid a construit en charge le tri en cliquant sur en-tête de colonne. Alors que l'ajout de tri à ListView/GridView est absolutely possible, je préfère plutôt avoir ce genre de choses prêtes à l'emploi dans DataGrid.
qu'en est-il des performances? un Datagrid avec 200 éléments (8 colonnes) groupés par une colonne a besoin de 20s + sur mon ordinateur pour le rendu. – Firo
@Firo: Ce n'est certainement pas un problème de DataGrid. Le goulot d'étranglement des performances doit être ailleurs. – Liero
@Liero J'ai échangé la grille de données avec la grille de données wpf toolagrid et le problème est parti. C'est définitivement un problème avec la base de données wpf simple. J'ai testé qu'il faut des années pour mesurer avec les groupements – Firo
- 1. Ajouter une nouvelle ligne: ListView vs DataGrid
- 2. WPF DataGrid bidimensionnel/ListView?
- 3. Datagrid dans vs 2010
- 4. ListView DisplayMemberBinding vs DataTemplate
- 5. StackPanel vs DataGrid vs DockPanel dans WPF
- 6. grille personnalisée asp.net vs GridView/ListView
- 7. Performance de GridView vs DataList vs Répéteur vs ListView
- 8. Android ListView OnItemClickListner Vs. Voir OnClickListener
- 9. Remplir datagrid ou listview à partir du fichier XML
- 10. Comment faire fonctionner un ListView (ou DataGrid) avec TextWrapping (WPF)
- 11. WinForms gratuit DataGrid ou ListView avec des capacités de regroupement
- 12. 'DataGridView' VS 'DataGrid' lors de la conversion en 'DataSet'?
- 13. ListBox vs ListView - comment choisir pour la liaison de données
- 14. Liste dynamique fantaisie dans Android: TableLayout vs ListView
- 15. onItemClickListener (ListActivity) vs onItemClick (ListView): lequel dois-je utiliser?
- 16. WPF Listview
- 17. ListView ListView et ExpandableListView
- 18. C# Windows Form -DataGrid -DataPropertyName
- 19. datagrid dans une cellule datagrid
- 20. WPG DataGrid style-Silverlight DataGrid?
- 21. Datagrid CurrentRowIndex renvoie -1?
- 22. WPF sélection DataGrid changé
- 23. Obtenir l'élément de données après DataBound à partir de ListView/DataGrid (n'importe quelle liste) dans ASP.Net
- 24. Dans WPF, pouvez-vous lier un ListView (PAS DataGrid) à un DataSet Matrix (Cross-Tab)?
- 25. DataGrid force en mode d'édition lors de l'utilisation ListView pour CellTemplate
- 26. DataGrid WPF sélection désactivée
- 27. Style vs ControlTemplate
- 28. Multicolumn ListView dans WPF - erreurs
- 29. VB.NET Datagrid
- 30. Infragistics Datagrid
Merci pour votre information. Y a-t-il des différences avec les événements pour les changements de données dans les colonnes, la facilité de tri/filtrage des données ou est-ce que tout est pareil? –
Je ne suis pas sûr de cela, puisque j'utilise la liaison à un modèle pour trier, filtrer et obtenir des notifications de mise à jour des données. Mais pour cela, ListView et DataGrid apparaissent similaires. – codekaizen
Mon application actuelle a une base de données> Entity Framework> Observable collection (in viewmodel)> listview. Ce qui est important pour moi, c'est que je voudrais avoir les données dans la mise à jour de datagrid quand les données de base de données changent. Je ne sais pas à quel point c'est simple à faire, mais je me penche sur la question maintenant. –