2012-04-06 10 views
1

Ich möchte alle Zellen mit dem gleichen Steuerelement füllen. Was ich jetzt habe, ist eine Kontrollvorlage und ein Raster. Aber ich kann in Xaml keinen einfachen Weg finden, das Steuerelement allen Zellen hinzuzufügen.Füllen Sie alle Gitterzellen mit einer Kontrollschablone

Dies ist der Code, den ich jetzt haben:

<Window x:Class="AcMidi.MainWindow" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     Title="MainWindow" Height="512" Width="760"> 
    <Window.Resources> 
     <ControlTemplate x:Key="Planet"> 
      <Button Content="Button"></Button> 
     </ControlTemplate> 
    </Window.Resources> 
    <Grid Height="209" Name="grid1" Width="500"> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="*"/> 
      <ColumnDefinition Width="*" /> 
      <ColumnDefinition Width="*" /> 
     </Grid.ColumnDefinitions> 
     <Grid.RowDefinitions> 
      <RowDefinition Height="*" /> 
      <RowDefinition Height="*" /> 
      <RowDefinition Height="*" /> 
     </Grid.RowDefinitions> 
    </Grid> 
</Window> 

Antwort

1

Sie eine ItemsControl

  • Bind die ItemsSource zu einer Sammlung von Gegenständen verwenden, könnten die Eigenschaften für Zeile Postion und Spaltenposition haben, können Sie kann eine solche Sammlung mit zwei for-Schleifen leicht erstellen.
  • Machen Sie die ItemsPanel die Grid
  • In dem ItemContainerStyle Du die Grid.Column und Grid.Row auf die Eigenschaften auf Ihren Elementen binden kannst.
  • Setzen Sie die ItemTemplate auf Ihre Vorlage (die eine DataTemplate sein sollte, da Sie kein Steuerelement Templating sind).
Verwandte Themen