ux: accent button style

Signed-off-by: leo <longshuang@msn.cn>
This commit is contained in:
leo
2025-11-21 18:03:59 +08:00
parent 13c40da9b6
commit 1133c298db
3 changed files with 61 additions and 57 deletions

View File

@@ -510,6 +510,7 @@
<Setter Property="Background" Value="Transparent"/>
</Style>
<Style Selector="Button.flat.primary">
<Setter Property="Foreground" Value="{DynamicResource AccentButtonForeground}"/>
<Setter Property="BorderBrush" Value="{DynamicResource AccentButtonBorderBrush}"/>
<Setter Property="Background" Value="{DynamicResource AccentButtonBackground}"/>
</Style>
@@ -517,72 +518,19 @@
<Setter Property="Background" Value="{DynamicResource AccentButtonBackgroundPointerOver}"/>
</Style>
<Style Selector="Button.flat.primary:pointerover /template/ ContentPresenter#PART_ContentPresenter">
<Setter Property="Foreground" Value="{DynamicResource AccentButtonForeground}"/>
<Setter Property="Background" Value="Transparent"/>
</Style>
<Style Selector="Button.flat.primary:disabled">
<Setter Property="Opacity" Value=".65"/>
</Style>
<Style Selector="Button.flat.primary TextBlock">
<Style Selector="Button.flat.primary:disabled /template/ ContentPresenter#PART_ContentPresenter">
<Setter Property="Foreground" Value="{DynamicResource AccentButtonForeground}"/>
</Style>
<Style Selector="Button.flat.primary ToolTip TextBlock">
<Setter Property="Foreground" Value="{DynamicResource Brush.FG1}"/>
</Style>
<Style Selector="SplitButton">
<Setter Property="MinHeight" Value="24"/>
<Setter Property="Template">
<ControlTemplate>
<Grid ColumnDefinitions="*,1,Auto">
<Button x:Name="PART_PrimaryButton"
Grid.Column="0"
Classes="flat primary"
MinWidth="32"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
Content="{TemplateBinding Content}"
ContentTemplate="{TemplateBinding ContentTemplate}"
Command="{TemplateBinding Command}"
CommandParameter="{TemplateBinding CommandParameter}"
CornerRadius="3,0,0,3"
Padding="{TemplateBinding Padding}"
Focusable="False"
KeyboardNavigation.IsTabStop="False" />
<Button x:Name="PART_SecondaryButton"
Grid.Column="2"
Classes="flat primary"
Width="32"
CornerRadius="0,3,3,0"
Padding="0"
Focusable="False"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
KeyboardNavigation.IsTabStop="False">
<Path Height="12" Width="12"
Margin="0,4,0,0"
Fill="{DynamicResource AccentButtonForeground}"
Data="{DynamicResource Icons.Down}"/>
</Button>
</Grid>
</ControlTemplate>
</Setter>
<Style Selector="^:disabled /template/ Button">
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="BorderBrush" Value="{DynamicResource Brush.Border2}"/>
<Setter Property="Background" Value="Transparent"/>
</Style>
<Style Selector="^:disabled TextBlock">
<Setter Property="Foreground" Value="{DynamicResource Brush.FG2}"/>
</Style>
<Style Selector="^:disabled Path">
<Setter Property="Fill" Value="{DynamicResource Brush.FG2}"/>
</Style>
</Style>
<Style Selector="aee|TextArea">
<Setter Property="SelectionBorder">
<Setter.Value>

View File

@@ -66,8 +66,8 @@
HorizontalContentAlignment="Center"
VerticalContentAlignment="Center">
<StackPanel Orientation="Horizontal">
<Path Width="12" Height="12" Data="{StaticResource Icons.Pull}" Fill="White"/>
<TextBlock Text="{DynamicResource Text.SelfUpdate.GotoDownload}" Margin="8,0,0,0"/>
<Path Width="12" Height="12" Data="{StaticResource Icons.Pull}" Fill="{DynamicResource AccentButtonForeground}"/>
<TextBlock Text="{DynamicResource Text.SelfUpdate.GotoDownload}" Margin="8,0,0,0" Foreground="{DynamicResource AccentButtonForeground}"/>
</StackPanel>
</Button>

View File

@@ -296,6 +296,62 @@
Padding="8,0"
Click="OnContinue"
IsVisible="{Binding InProgressContext, Converter={x:Static ObjectConverters.IsNotNull}}">
<SplitButton.Styles>
<Style Selector="SplitButton">
<Setter Property="MinHeight" Value="24"/>
<Setter Property="Template">
<ControlTemplate>
<Grid ColumnDefinitions="*,1,Auto">
<Button x:Name="PART_PrimaryButton"
Grid.Column="0"
Classes="flat primary"
MinWidth="32"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
Content="{TemplateBinding Content}"
ContentTemplate="{TemplateBinding ContentTemplate}"
Command="{TemplateBinding Command}"
CommandParameter="{TemplateBinding CommandParameter}"
CornerRadius="3,0,0,3"
Padding="{TemplateBinding Padding}"
Focusable="False"
KeyboardNavigation.IsTabStop="False" />
<Button x:Name="PART_SecondaryButton"
Grid.Column="2"
Classes="flat primary"
Width="32"
CornerRadius="0,3,3,0"
Padding="0"
Focusable="False"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
KeyboardNavigation.IsTabStop="False">
<Path Height="12" Width="12"
Margin="0,4,0,0"
Fill="{DynamicResource AccentButtonForeground}"
Data="{DynamicResource Icons.Down}"/>
</Button>
</Grid>
</ControlTemplate>
</Setter>
<Style Selector="^:disabled /template/ Button">
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="BorderBrush" Value="{DynamicResource Brush.Border2}"/>
<Setter Property="Background" Value="Transparent"/>
</Style>
<Style Selector="^:disabled TextBlock">
<Setter Property="Foreground" Value="{DynamicResource Brush.FG2}"/>
</Style>
<Style Selector="^:disabled Path">
<Setter Property="Fill" Value="{DynamicResource Brush.FG2}"/>
</Style>
</Style>
</SplitButton.Styles>
<SplitButton.IsEnabled>
<MultiBinding Converter="{x:Static BoolConverters.And}">
<Binding Path="IsCommitting" Converter="{x:Static BoolConverters.Not}"/>