Définir la largeur de la colonne / largeur de la grille dynamiquement

J'ai besoin de créer un WPF grille de manière dynamique à partir de code derrière. Cela va bien et je peux le faire alors que j'ai mis le contenu largeurs, mais ce dont j'ai besoin à faire est de les placer de sorte que lorsque je redimensionner la fenêtre les contrôles sont re de taille dynamiquement

var col = new ColumnDefinition();
col.Width = new System.Windows.GridLength(200);
grid1.ColumnDefinitions.Add(col);

Ceci va produire XAML

<Grid.ColumnDefinitions>
     <ColumnDefinition Width="200"></ColumnDefinition>
</Grid.ColumnDefinitions>

Mais ce dont j'ai besoin est d'utiliser un * ou un point d'interrogation ie.

<Grid.ColumnDefinitions>
     <ColumnDefinition Width="*"></ColumnDefinition>
</Grid.ColumnDefinitions>

Mais la WidthValue ne prend pas en charge un * ou un point d'interrogation lors de la création de code derrière ?

source d'informationauteur Welsh King