Je remplis un contrôle DataGridView dans un formulaire Windows (C# 2.0, pas WPF).
Mon objectif est d'afficher une grille qui remplit proprement toute la largeur disponible avec des cellules - c'est-à-dire aucune zone inutilisée (gris foncé) en bas à droite et qui dimensionne chaque colonne de manière appropriée en fonction des données qu'elle contient, mais permet également à l'utilisateur de redimensionner n'importe laquelle des colonnes à sa convenance.
J'essaie d'obtenir ce résultat en définissant le mode de dimensionnement automatique de chaque colonne comme suit DataGridViewAutoSizeColumnMode.AllCells à l'exception d'une des colonnes que j'ai réglée sur DataGridViewAutoSizeColumnMode.Fill (Remplir) afin de s'assurer que toute la zone de la grille est proprement remplie de données. (Cela ne me dérange pas que lorsque l'utilisateur tente de redimensionner cette colonne, elle revienne à une taille qui garantit que l'espace horizontal est toujours utilisé).
Cependant, comme je l'ai mentionné, j'aimerais permettre à l'utilisateur de redimensionner les colonnes en fonction de ses propres besoins. En définissant ces valeurs AutoSizeMode pour chaque colonne, il semble que l'utilisateur ne soit pas en mesure de redimensionner ces colonnes.
J'ai essayé de ne pas paramétrer l'AutoSizeMode de toutes les colonnes, ce qui permet de les redimensionner MAIS ne définit pas la taille initiale en fonction des données que les cellules contiennent. Le même résultat se produit lorsque l'on remet l'AutoSizeMode de la grille sur "Not Set" après avoir chargé les données.
Manque-t-il un paramètre qui permette de définir automatiquement les largeurs de colonne par défaut ET le redimensionnement par l'utilisateur ou existe-t-il une autre technique que je dois utiliser pour remplir le contrôle DataGridView ?
0 votes
Ne pas le régler sur "Not Set" le régler sur "Aucun" donc redimensionnement ne reviendra pas en arrière -- testé pour c# , .net2.0