2009-04-08 7 views
0

Ich füge einige Kontrollen dynamisch innerhalb eines Rasters hinzu. Ich werde nicht wissen, wie viele und ich werde die genaue Hierarchie nicht kennen. Ich möchte auf einige Steuerelemente mit einem bestimmten Typ (z. B. Button) zugreifen und einige Eigenschaften instanziieren. Was ist der beste Weg, dies zu tun?WPF - schneller Weg, um den visuellen Baum zu bekommen

+0

bekommen kann. Der beste Weg, dies zu tun, ist wahrscheinlich, es nicht zu tun und stattdessen einen Stil zu verwenden. –

Antwort

1

Sie können den Schaltflächenstil auf Gitterebene überschreiben. Hier ein Beispiel:

<Grid> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="144*" /> 
     <RowDefinition Height="171*" /> 
    </Grid.RowDefinitions> 
    <Grid.Resources> 
     <!-- Override all Buttons style that are childs of the grid --> 
     <Style TargetType="Button"> 
      <Setter Property="Background" Value="LightBlue"/> 
      <Setter Property="FontSize" Value="20" /> 
     </Style> 
    </Grid.Resources> 
    <Button Grid.Row="0">Button1</Button> 
    <Button Grid.Row="1">Button2</Button> 
</Grid> 

in diesem Beispiel alle Tasten innerhalb des Gitters platziert haben den Hintergrund und die Schriftgröße durch den in den Grid-Ressourcen definiert Stil.

Bearbeiten: Dies funktioniert für Steuerelemente Schaltflächen zur Laufzeit hinzu, der Stil wird auf diese Steuerelemente angewendet, wenn sie dem Raster hinzugefügt, und Sie können auch Stile programmaticaly definieren, wenn Sie möchten und sie den Rasterressourcen hinzufügen und sie werden automatisch angewendet werden.