Question

vu plusieurs exemples d'applications WPF j'ai vu l'utilisation du contrôle de Grid pour presque tout, même les choses les plus simples avec seulement 1 colonne ou ligne.

En outre, les modèles WPF commencent par une grille vide.

Pour moi, en utilisant StackPanel ou DockPanel est moins bavard et sont meilleurs pour l'entretien (pensez ajout d'une ligne plus tard et d'avoir à ajouter +1 à toutes les autres lignes)

Pourquoi Grid mieux ou ce que je suis absent?

Était-ce utile?

La solution

Je pense qu'une partie de la raison de la grille étant l'élément par défaut est qu'il est (un peu) plus convivial design.

Avec une grille, il n'y a aucune restriction d'avoir plusieurs éléments dans une seule grille « cellule », qui permet à un concepteur de placement libre d'avoir la même souplesse que d'une toile, mais qui ont encore les capacités de mise en page automatique que la grille (et les autres contrôles de mise en page plus agréable comme StackPanel et DockPanel) contient.

Autres conseils

Deux mots: dimensionnement étoile. Le Grid permet au contenu de la taille de l'espace qu'il contient sans fournir explicitement une taille pour le conteneur. Les commandes du panneau ne le font pas.

rien manquer. J'ai beaucoup de grilles dans mon application (s), mais pas nécessairement comme élément de niveau supérieur et certainement pas à vous décrire étends.

Peut-être beaucoup de gens juste ne réalisent pas qu'ils peuvent enlever la grille initiale, et au lieu ils ont mis leur propre contrôle dans le réseau.

J'ai trouvé que pour les fenêtres plus élaborées, il est plus facile de le décomposer dans des domaines fonctionnels qui sont assez indépendants (le mouvement et la taille sage) des autres. Grids permettent à ces zones de coexister dans un seul panneau, et leur permettre de se positionner sans tenir compte de là où d'autres contrôles sont (dans une certaine mesure).

Par exemple, dans un projet que je suis travaille en ce moment , j'ai fenêtre qui va être un gestionnaire d'expédition. Je veux trois vues de la liste (livraisons, colis, objets) J'ai un contrôle de grille avec deux colonnes; une avec la liste des paquets et un séparateur de grille, l'autre avec une grille imbriquée avec les deux autres listes et un séparateur de grille.

Je l'ai vu de nombreux concepteurs briser leur fenêtre vers le bas dans des domaines comme celui-ci, et de le faire avec autre chose qu'une grille ne fonctionne tout simplement pas car il n'y a pas de « cellules » discrètes que les éléments vivent indirectement. Tout à fait quelques fenêtres de programme prendre cette conception et donc je suppose que quand ils ont eu une réunion et a demandé ce qui devrait être le panneau de conteneur par défaut, la grille a été le choix en fonction de ce fait.

Cory

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top