2009-09-25 5 views
6

Meine typische Form mit Gittern so aussieht in XAML:Gibt es eine Möglichkeit, WPF Grid zu verwenden, ohne absolute Zellkoordinaten für jedes Element anzugeben?

<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> 

Gibt es eine Möglichkeit th genaue Zeile zu vermeiden, Angabe/Spaltenkoordinaten?

Grundsätzlich möchte ich in der Lage sein, meine Steuerelemente im Grid schnell neu zu ordnen, indem ich XAML rumkopiere und jetzt muss ich die Koordinaten ändern, was peinlich ist. Ich möchte sie im Designer nicht neu anordnen, da sie den Elementen unnötige Eigenschaften hinzufügt.

Antwort

1

Nein, es gibt keine Möglichkeit, Zeilen-/Spaltennummern zu vermeiden. Wenn Sie MS Blend nicht installieren möchten, können Sie das wundervolle und kostenlose Visual Studio Addon von Karl Shifflett ausprobieren: . Unter anderem nützliche Dinge können Sie mit Grid-Zellen spielen ...

+0

Dies hilft leider nicht mit dem Problem "zusätzliche Eigenschaften", da es immer noch den VS Designer verwendet. Tolles Toolset. –

+0

Sieht cool aus, es kann einfach eine einfache Form von Grund auf erstellen, ich werde es versuchen! Spasibo) –

2

Nein. Leider funktioniert das Grid, indem die Eigenschaften Grid.Row und Grid.Column für die untergeordneten Objekte definiert sind - sie müssen für jedes Kind angegeben werden.

BTW - Blend macht es besser, Sie diese Dinge bewegen zu lassen, ohne dass die "extra" -Eigenschaften erscheinen. Vielleicht möchten Sie versuchen, für diese Situationen eine Chance zu geben.

+1

IS gibt es ein anderes Layout-Steuerelement, das meine Steuerelemente in "Spalten" organisieren kann? –

+1

Sie können ein StackPanel verwenden, bei dem jede "Zeile" ein horizontal ausgerichtetes Stackpanel enthält - in diesem Fall werden die Elemente ausgerichtet. Um ein perfektes "Raster" zu bekommen, müssten die Elemente natürlich die gleiche Größe haben. –

Verwandte Themen