2017-08-28 1 views
0

Ich versuche, ein Fenster Chrome mit der Taste zu erstellen, aber ich bin nicht in der Lage Titeltext und Bild zu bekommen, gibt es ein Beispiel von MSDN für diese, aber es hat einige Keyword nicht in VS2015 ArbeitsSystemParameter in MSDN Beispiel

<Style x:Key="StandardStyle" TargetType="{x:Type local:MainWindow}"> 
<Setter Property="WindowChrome.WindowChrome"> 
    <Setter.Value> 
     <WindowChrome /> 
    </Setter.Value> 
</Setter> 
<Setter Property="Template"> 
    <Setter.Value> 
     <ControlTemplate TargetType="{x:Type local:MainWindow}"> 
      <Grid> 
       <Border Background="White" 
         Margin="{Binding Source={x:Static **SystemParameters2.Current**}, Path=WindowNonClientFrameThickness}"> 
        <ContentPresenter Content="{TemplateBinding Content}" /> 
       </Border> 
       <TextBlock Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Title}" 
          VerticalAlignment="Top" HorizontalAlignment="Left" 
          Margin="36,8,0,0"/> 
       <Image Source="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Icon}" 
         VerticalAlignment="Top" HorizontalAlignment="Left" 
         Margin="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=(WindowChrome.WindowChrome).ResizeBorderThickness}" 
         Width="{Binding Source={x:Static shell:SystemParameters2.Current}, Path=SmallIconSize.Width}" 
         WindowChrome.IsHitTestVisibleInChrome="True"/> 
      </Grid> 
     </ControlTemplate> 
    </Setter.Value> 
</Setter> 

was "SystemParameters2.Current" in diesem Beispiel? Ist es ein Systemparameter oder benutzerdefiniert? Example by MSDN

Antwort

1

In VS2015/NET Framework 4.5 gibt es eine Klasse SystemParameters in der PresentationFramework Baugruppe, die die WindowNonClientFrameThickness und SmallIconWidth Eigenschaften enthält, so dass die äquivalent sein würde:

<Grid> 
    <Border Background="White" 
        Margin="{Binding Source={x:Static SystemParameters.WindowNonClientFrameThickness}}"> 
     <ContentPresenter Content="{TemplateBinding Content}" /> 
    </Border> 
    <TextBlock Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Title}" 
          VerticalAlignment="Top" HorizontalAlignment="Left" 
          Margin="36,8,0,0"/> 
    <Image ... 
         Width="{Binding Source={x:Static SystemParameters.SmallIconWidth}" 
         WindowChrome.IsHitTestVisibleInChrome="True"/> 
</Grid> 
Verwandte Themen