style<Window>: icons for MaximizeWindow/RestoreWindow button

This commit is contained in:
leo 2021-06-22 10:09:50 +08:00
parent 787c1a02d5
commit 794394ef0c
9 changed files with 64 additions and 27 deletions

View file

@ -142,4 +142,38 @@
</Setter.Value>
</Setter>
</Style>
<Style x:Key="Style.ToggleButton.MaxOrRestore" TargetType="{x:Type ToggleButton}">
<Setter Property="Background" Value="Transparent"/>
<Setter Property="BorderBrush" Value="Transparent"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ToggleButton}">
<Grid x:Name="BG" Background="Transparent">
<Path
x:Name="Icon"
Height="12"
Style="{DynamicResource Style.Icon}"
Fill="{DynamicResource Brush.FG1}"
Data="{DynamicResource Icon.Maximize}"/>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="True">
<Setter TargetName="Icon" Property="Data" Value="{DynamicResource Icon.Restore}"/>
</Trigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsChecked" Value="False"/>
<Condition Property="IsMouseOver" Value="True"/>
</MultiTrigger.Conditions>
<Setter TargetName="BG" Property="Background" Value="#40000000"/>
</MultiTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary>