2009-05-13 15 views
1
weg sind

Ich möchte meine Fenstervorlage ändern, zB:Durch eine Fenstervorlage zu ändern alle Bedienelemente

<Style x:Key="SilverGreenWindowStyle" TargetType="{x:Type Window}"> 
    <Setter Property="Template"> 
     <Setter.Value> 
      <ControlTemplate> 
       <Grid Background="{StaticResource SilverGreenBackground}" Width="503" Height="383"> 
        <Rectangle Margin="192,86,21,119" Fill="{StaticResource SilverGreenRectangleBackground}" Width="200" Height="200"/> 
       </Grid>  
      </ControlTemplate> 
     </Setter.Value>  
    </Setter> 
</Style> 

und die bewirkt, dass die Fenster steuert unsichtbar werden. Wie halte ich sie sichtbar?

Antwort

5

Sie müssen ein Element in Ihre Vorlage einfügen, um dem Fenster mitzuteilen, wo es den Inhalt anzeigen soll. ContentPresenter macht die Magie für Sie: Es wird den Inhalt des Fensters an welcher Position Sie es in den Baum einfügen.

Wenn Sie den regelmäßigen Inhalt wollen zum Beispiel auf das Rechteck, angezeigt werden, können Sie dies tun:

<Style x:Key="SilverGreenWindowStyle" TargetType="{x:Type Window}"> 
    <Setter Property="Template"> 
     <Setter.Value> 
      <ControlTemplate> 
       <Grid Background="{StaticResource SilverGreenBackground}" Width="503" Height="383"> 
        <Rectangle Margin="192,86,21,119" Fill="{StaticResource SilverGreenRectangleBackground}" Width="200" Height="200"/> 
        <ContentPresenter/> 
       </Grid>  
      </ControlTemplate> 
     </Setter.Value>  
    </Setter> 
</Style>