2009-09-25 9 views
6

Mi forma típica con cuadrícula siguiente aspecto en el XAML:¿Hay alguna manera de utilizar la cuadrícula WPF sin especificar las coordenadas absolutas de celda para cada elemento?

<Grid> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="Auto"></ColumnDefinition> 
      <ColumnDefinition></ColumnDefinition> 
     </Grid.ColumnDefinitions> 
     <Grid.RowDefinitions> 
      <RowDefinition Height="Auto"></RowDefinition> 
      <RowDefinition Height="Auto"></RowDefinition> 
      <RowDefinition Height="Auto"></RowDefinition> 
      <RowDefinition Height="Auto"></RowDefinition> 
      <RowDefinition Height="Auto"></RowDefinition> 
      <RowDefinition Height="Auto"></RowDefinition> 
     </Grid.RowDefinitions> 

     .... 

     <TextBlock Grid.Row="6" Text="Component"/> 
     <TextBox Grid.Row="6" Grid.Column="1" Text="{Binding Component.Name}"></TextBox> 
     <TextBlock Grid.Row="7" Text="Bussiness Process"/> 
     <TextBox Grid.Row="7" Grid.Column="1" Text="{Binding BusinessProcess.Name}"></TextBox> 

    </Grid> 

¿Hay una manera de evitar especificar ª fila exacta/coordina la columna?

Básicamente, me gustaría poder reordenar mis controles en la Grilla rápidamente copiando XAML y ahora tengo que cambiar las coordenadas, lo cual es incómodo. No quiero reordenarlos en el Diseñador porque agrega algunas propiedades innecesarias a los elementos.

Respuesta

1

No, no hay forma de evitar los números de Fila/Columna. Si no desea instalar MS Blend, puede probar el maravilloso y gratuito complemento de Visual Studio de Karl Shifflett: XAML Power Toys. Entre otras cosas útiles, te permite jugar con celdas de cuadrícula ...

+0

Desafortunadamente, esto no ayuda con el problema de las "propiedades adicionales", ya que todavía está usando el Diseñador VS. Gran conjunto de herramientas, sin embargo. –

+0

Parece genial, puede generar una forma sencilla desde cero, ¡lo probaré! Spasibo) –

2

No. Lamentablemente, la cuadrícula funciona teniendo las propiedades asociadas Grid.Row y Grid.Column definidas en los elementos secundarios: se deben especificar en cada elemento secundario.

BTW - Blend hace un mejor trabajo al permitirle mover estas cosas sin que aparezcan las propiedades "adicionales". Es posible que desee tratar de dar una oportunidad para este tipo de situaciones.

+1

¿Existe algún otro control de diseño que pueda organizar mis controles en "columnas"? –

+1

Puede usar un StackPanel con cada "fila" que contenga un panel de distribución orientado horizontalmente; en ese caso, los elementos se alinearán. Sin embargo, para obtener una "cuadrícula" perfecta, los elementos tendrían que ser naturalmente del mismo tamaño. –

Cuestiones relacionadas