J'ai une application qui affiche les classements pour les ligues sportives. Ces tables sont essentiellement des grilles avec des colonnes différentes représentant des statistiques pour chaque équipe telles que les matchs joués, gagnés, perdus, buts marqués et concédés etc. Ainsi, un classement a une propriété intéressante: Pour une compétition donnée, nous avons toujours le même montant des rangées (représentant les équipes). Puisque les contrôles WPF sont sans apparence, je pourrais probablement utiliser un ListBox, un ListView, un ItemsControl directement, ou même un DataGrid. Cela ne devrait pas avoir autant d'importance.Redimensionnement de la police dans la liste ou la grille WPF pour utiliser correctement l'espace
Cependant, je veux quelque chose que je n'ai pas encore pu réaliser: Compte tenu de la taille de la table (en pratique, la taille de la fenêtre), TOUTES les équipes devraient être visibles à tout moment (pas de défilement vertical). Les colonnes de statistiques (telles que choisies par l'utilisateur) doivent être visibles et la taille de la police doit refléter cette taille afin qu'elle soit la plus grande possible sans que la colonne ne devienne trop grande pour que le contenu s'adapte.
Je peux facilement utiliser un UniformGrid pour atteindre la partie sans défilement vertical. Cependant, ajuster la taille de la police ne semble pas être aussi facile. Il y a bien sûr le ViewBox, qui permettrait au contenu de chaque cellule de se dimensionner individuellement pour être aussi grand que possible, mais cela pourrait conduire à la laideur, car vous finiriez avec un tas de cellules avec des tailles.
Je ne m'attends pas à avoir une réponse facile à cela, mais si c'est possible, j'aimerais beaucoup en entendre parler. En résumé:
La table doit être redimensionnée avec la fenêtre tout en affichant toujours toutes les données sans barres de défilement.
La taille de la police doit être définie sur la plus grande taille possible permettant à chaque colonne de chaque ligne d'afficher tout son contenu.
Toutes les colonnes doivent être de la taille la plus petite possible afin que tout le contenu soit visible, à l'exception d'une colonne qui fait "* -size" pour manger l'espace restant.
Alors ... Des façons intelligentes de le faire? :)
Exactement! +1 des lésions cérébrales pour moi, je pensais à des boîtes de vision à l'intérieur des cellules individuelles, mais c'est bien sûr totalement débile. Je dois juste avoir une emprise sur les propriétés Stretch et je devrais être libre à la maison - merci! –