Files
2026-02-20 15:31:44 +08:00

163 lines
8.9 KiB
XML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:assists="clr-namespace:Melskin.Assists"
xmlns:controls="clr-namespace:Melskin.Controls"
xmlns:decorations="clr-namespace:Melskin.Controls.Decorations">
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/Melskin;component/Themes/Animations.xaml" />
<ResourceDictionary Source="/Melskin;component/Controls/IconElement.xaml" />
</ResourceDictionary.MergedDictionaries>
<Style x:Key="TagBaseStyle" TargetType="{x:Type controls:Tag}">
<Setter Property="IsTabStop" Value="False" />
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="FocusVisualStyle" Value="{x:Null}" />
<Setter Property="HorizontalAlignment" Value="Center" />
<Setter Property="VerticalAlignment" Value="Center" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="HorizontalContentAlignment" Value="Center" />
<Setter Property="FontSize" Value="12" />
<!--<Setter Property="FontFamily" Value="{DynamicResource FontFamily}" />-->
<Setter Property="Background" Value="{DynamicResource ControlBackgroundNormalBrush}" />
<Setter Property="Foreground" Value="{DynamicResource TextPrimaryBrush}" />
<!--<Setter Property="assists:ControlAssist.BorderStyle" Value="{DynamicResource BorderStyleBase}" />-->
<Setter Property="assists:ControlAssist.CornerRadius" Value="4" />
<Setter Property="RenderTransformOrigin" Value="0,0.5" />
<Setter Property="RenderTransform">
<Setter.Value>
<ScaleTransform />
</Setter.Value>
</Setter>
</Style>
<Style
x:Key="EmbossTag"
BasedOn="{StaticResource TagBaseStyle}"
TargetType="{x:Type controls:Tag}">
<Setter Property="Padding" Value="8,2" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type controls:Tag}">
<decorations:EmbossBorder
x:Name="Effect"
Margin="-4"
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
CornerRadius="{TemplateBinding assists:ControlAssist.CornerRadius}"
Focusable="False"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}">
<Border
x:Name="Border"
Padding="{TemplateBinding Padding}"
Background="{TemplateBinding Background}"
CornerRadius="{TemplateBinding assists:ControlAssist.CornerRadius}"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
UseLayoutRounding="True">
<!-- Content -->
<Grid>
<Grid.ColumnDefinitions>
<!-- Content -->
<ColumnDefinition Width="*" />
<!-- Close Button -->
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<ContentPresenter
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
Content="{TemplateBinding Content}"
ContentStringFormat="{TemplateBinding ContentStringFormat}"
ContentTemplate="{TemplateBinding ContentTemplate}"
ContentTemplateSelector="{TemplateBinding ContentTemplateSelector}" />
<!-- 关闭图标 为了让触发Close范围足够大而不是只有Path的才能触发套了一层Border -->
<Border
x:Name="PART_Close"
Grid.Column="1"
VerticalAlignment="Center"
Background="Transparent"
Visibility="Collapsed">
<controls:IconElement
Foreground="{TemplateBinding Foreground}"
Style="{StaticResource ToolIcon}"
Symbol="Close"
UseLayoutRounding="True" />
</Border>
</Grid>
</Border>
</decorations:EmbossBorder>
<ControlTemplate.Triggers>
<Trigger Property="Closable" Value="True">
<Setter TargetName="PART_Close" Property="Visibility" Value="Visible" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Opacity" Value="0.85" />
</Trigger>
</Style.Triggers>
</Style>
<Style BasedOn="{StaticResource TagBaseStyle}" TargetType="{x:Type controls:Tag}">
<Setter Property="Padding" Value="6,4" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="BorderBrush" Value="{DynamicResource BorderNormalBrush}" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type controls:Tag}">
<Border
x:Name="Border"
Padding="{TemplateBinding Padding}"
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
CornerRadius="{TemplateBinding assists:ControlAssist.CornerRadius}"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
UseLayoutRounding="True">
<!-- Content -->
<Grid>
<Grid.ColumnDefinitions>
<!-- Content -->
<ColumnDefinition Width="*" />
<!-- Close Button -->
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<ContentPresenter
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
Content="{TemplateBinding Content}"
ContentStringFormat="{TemplateBinding ContentStringFormat}"
ContentTemplate="{TemplateBinding ContentTemplate}"
ContentTemplateSelector="{TemplateBinding ContentTemplateSelector}" />
<controls:IconElement
x:Name="PART_Close"
Grid.Column="1"
Padding="1,-4,-4,-4"
Background="Transparent"
Foreground="{TemplateBinding Foreground}"
Style="{StaticResource ToolIcon}"
Symbol="Close"
UseLayoutRounding="True"
Visibility="Collapsed" />
</Grid>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="Closable" Value="True">
<Setter TargetName="PART_Close" Property="Visibility" Value="Visible" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Opacity" Value="0.85" />
</Trigger>
</Style.Triggers>
</Style>
</ResourceDictionary>