c# - tamaño - Establecer la columna de cuadrícula/Ancho de fila/Altura dinámicamente
como modificar el alto de una fila en excel (3)
Podrías especificarlo así:
Para columnas de tamaño automático:
GridLength.Auto
Para columnas de tamaño estrella:
new GridLength(1,GridUnitType.Star)
Necesito crear una cuadrícula WPF dinámicamente desde el código de atrás. Esto está yendo bien y puedo hacerlo para que establezca los anchos de contenido, pero lo que tengo que hacer es configurarlos de modo que cuando cambie el tamaño de la ventana los controles se vuelvan a dimensionar dinámicamente.
var col = new ColumnDefinition();
col.Width = new System.Windows.GridLength(200);
grid1.ColumnDefinitions.Add(col);
Esto producirá XAML
<Grid.ColumnDefinitions>
<ColumnDefinition Width="200"></ColumnDefinition>
</Grid.ColumnDefinitions>
Pero lo que necesito es usar un * o un signo de interrogación, es decir.
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"></ColumnDefinition>
</Grid.ColumnDefinitions>
Pero el WidthValue no admite un * o un signo de interrogación a cuando se crea desde código detrás?
Creo que esto puede ayudar:
para Auto Column:
ColumnDefinition cd = new ColumnDefinition();
cd.Width = GridLength.Auto;
o para la longitud de la grilla proporcional:
ColumnDefinition cd = new ColumnDefinition();
cd.Width = new GridLength(1, GridUnitType.Star);
o mira: http://msdn.microsoft.com/en-us/library/system.windows.gridlength.aspx y http://msdn.microsoft.com/en-us/library/system.windows.gridunittype. aspx
Greez Shounbourgh
Hay 3 tipos de configuración de Ancho a cuadrícula Definiciones de columna:
Por columna de porcentaje:
yourGrid.ColumnDefinitions[0].Width = new GridLength(1, GridUnitType.Star);
En xaml:
<ColumnDefinition Width="1*"/>
Para Pixel Column
yourGrid.ColumnDefinitions[0].Width = new GridLength(10, GridUnitType.Pixel);
yourGrid.ColumnDefinitions[0].Width = new GridLength(10);
En xaml:
<ColumnDefinition Width="10"/>
Para columna automática
yourGrid.ColumnDefinitions[0].Width = GridLength.Auto;
En xaml:
<ColumnDefinition Width="Auto"/>
¡Espero eso ayude!