Le redimensionnement DataGridView colonnes en fonction de la largeur de la grille

Je vais avoir un formulaire windows. Dans ce formulaire j'ai contrôle datagrid qui a quelques colonnes prédéfinies de largeur.

Quand je redimensionner le formulaire soit à l'aide de maximiser ou de la boîte à l'aide de la souris, datagrid redimensionne automatiquement pour s'adapter à la forme. Ceci est fait en utilisant l'ancre de la propriété de la grille de données.

Maintenant, j'ai besoin de redimensionner la largeur des colonnes en tant que bien de sorte que toutes les colonnes s'ajustent à redimensionnée de la grille sans se barre de défilement horizontale. À l'heure actuelle je suis en train de faire cela en calculant le rapport de la nouvelle grille de largeur avec l'ancienne grille de largeur et de l'augmentation de la largeur de la colonne dans la même proportion. Mais le problème c'est le rapport n'est pas exacte, quand je agrandir et réduire la forme, donc après quelques redimensionner actions total des colonnes la largeur est inférieure à la largeur de la grille et il commence à montrer de l'espace vide dans la grille. Je fais cela dans la grille de l'événement de redimensionnement.

Un autre attraper, c'est, il y a le couple de colonnes fixes également présents dans cette grille et je ne suis pas censé modifier la largeur des colonnes dans la grille de redimensionnement.

Comment devrions-nous gérer cela? Est-il un autre moyen de gérer ce redimensionner problème?

Mise à jour: je faisais inutile d'emploi de calcul du ratio d'augmenter la largeur des colonnes, ce qui n'est pas nécessaire.

Merci @KMan. Votre suggestion pour l'utilisation de la propriété remplissage travaillé. Il prend soin de la largeur de la colonne en fonction de redimensionnement sur la grille changé largeur sur redimensionner.

OriginalL'auteur JPReddy | 2010-09-29