mirror of
https://gitcode.com/gh_mirrors/se/Semi.Avalonia
synced 2026-04-26 03:07:54 +08:00
Merge pull request #564 from irihitech/splitbutton
Fix the issue of HorizontalAlignment in SplitButton
This commit is contained in:
@@ -3,8 +3,19 @@
|
|||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
x:CompileBindings="True">
|
x:CompileBindings="True">
|
||||||
<Design.PreviewWith>
|
<Design.PreviewWith>
|
||||||
<StackPanel Margin="20">
|
<StackPanel Width="500" Height="500" Margin="20" Spacing="8">
|
||||||
<SplitButton>Hello</SplitButton>
|
<SplitButton
|
||||||
|
Theme="{DynamicResource SolidSplitButton}"
|
||||||
|
Content="Hello" />
|
||||||
|
<ToggleSplitButton
|
||||||
|
IsChecked="True"
|
||||||
|
HorizontalAlignment="Stretch"
|
||||||
|
Content="Hello" />
|
||||||
|
<SplitButton
|
||||||
|
Theme="{DynamicResource SolidSplitButton}" />
|
||||||
|
<ToggleSplitButton
|
||||||
|
IsChecked="True"
|
||||||
|
HorizontalAlignment="Stretch" />
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
</Design.PreviewWith>
|
</Design.PreviewWith>
|
||||||
|
|
||||||
@@ -13,22 +24,18 @@
|
|||||||
<Setter Property="CornerRadius" Value="{DynamicResource ButtonCornerRadius}" />
|
<Setter Property="CornerRadius" Value="{DynamicResource ButtonCornerRadius}" />
|
||||||
<Setter Property="BorderThickness" Value="{DynamicResource ButtonBorderThickness}" />
|
<Setter Property="BorderThickness" Value="{DynamicResource ButtonBorderThickness}" />
|
||||||
<Setter Property="Padding" Value="{DynamicResource ButtonDefaultPadding}" />
|
<Setter Property="Padding" Value="{DynamicResource ButtonDefaultPadding}" />
|
||||||
<Setter Property="HorizontalAlignment" Value="Center" />
|
|
||||||
<Setter Property="VerticalAlignment" Value="Center" />
|
|
||||||
<Setter Property="RenderTransform" Value="none" />
|
<Setter Property="RenderTransform" Value="none" />
|
||||||
<Setter Property="FontSize" Value="{DynamicResource ButtonDefaultFontSize}" />
|
<Setter Property="FontSize" Value="{DynamicResource ButtonDefaultFontSize}" />
|
||||||
<Setter Property="FontWeight" Value="{DynamicResource ButtonDefaultFontWeight}" />
|
<Setter Property="FontWeight" Value="{DynamicResource ButtonDefaultFontWeight}" />
|
||||||
<Setter Property="BackgroundSizing" Value="OuterBorderEdge" />
|
<Setter Property="BackgroundSizing" Value="OuterBorderEdge" />
|
||||||
<Setter Property="HorizontalContentAlignment" Value="Center" />
|
|
||||||
<Setter Property="VerticalContentAlignment" Value="Center" />
|
|
||||||
<Setter Property="Cursor" Value="Hand" />
|
<Setter Property="Cursor" Value="Hand" />
|
||||||
<Setter Property="Template">
|
<Setter Property="Template">
|
||||||
<ControlTemplate TargetType="Button">
|
<ControlTemplate TargetType="Button">
|
||||||
<ContentPresenter
|
<ContentPresenter
|
||||||
Name="PART_ContentPresenter"
|
Name="PART_ContentPresenter"
|
||||||
Padding="{TemplateBinding Padding}"
|
Padding="{TemplateBinding Padding}"
|
||||||
HorizontalAlignment="Stretch"
|
HorizontalAlignment="{TemplateBinding HorizontalAlignment}"
|
||||||
VerticalAlignment="Stretch"
|
VerticalAlignment="{TemplateBinding VerticalAlignment}"
|
||||||
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
|
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
|
||||||
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
||||||
Background="{TemplateBinding Background}"
|
Background="{TemplateBinding Background}"
|
||||||
@@ -55,7 +62,7 @@
|
|||||||
<Setter Property="Padding" Value="{DynamicResource ButtonDefaultPadding}" />
|
<Setter Property="Padding" Value="{DynamicResource ButtonDefaultPadding}" />
|
||||||
<Setter Property="RenderTransform" Value="none" />
|
<Setter Property="RenderTransform" Value="none" />
|
||||||
<Setter Property="HorizontalAlignment" Value="Center" />
|
<Setter Property="HorizontalAlignment" Value="Center" />
|
||||||
<Setter Property="VerticalAlignment" Value="Center" />
|
<Setter Property="VerticalAlignment" Value="Stretch" />
|
||||||
<Setter Property="FontSize" Value="{DynamicResource ButtonDefaultFontSize}" />
|
<Setter Property="FontSize" Value="{DynamicResource ButtonDefaultFontSize}" />
|
||||||
<Setter Property="FontWeight" Value="{DynamicResource ButtonDefaultFontWeight}" />
|
<Setter Property="FontWeight" Value="{DynamicResource ButtonDefaultFontWeight}" />
|
||||||
<Setter Property="HorizontalContentAlignment" Value="Center" />
|
<Setter Property="HorizontalContentAlignment" Value="Center" />
|
||||||
@@ -68,11 +75,28 @@
|
|||||||
ClipToBounds="True"
|
ClipToBounds="True"
|
||||||
CornerRadius="{TemplateBinding CornerRadius}">
|
CornerRadius="{TemplateBinding CornerRadius}">
|
||||||
<DockPanel>
|
<DockPanel>
|
||||||
|
<Button
|
||||||
|
Name="PART_SecondaryButton"
|
||||||
|
Padding="4,0"
|
||||||
|
BorderThickness="{TemplateBinding BorderThickness}"
|
||||||
|
CornerRadius="0"
|
||||||
|
DockPanel.Dock="Right"
|
||||||
|
Theme="{DynamicResource SemiSplitButtonElement}">
|
||||||
|
<PathIcon
|
||||||
|
Theme="{DynamicResource InnerPathIcon}"
|
||||||
|
Data="{DynamicResource SplitButtonIconGlyph}"
|
||||||
|
Foreground="{Binding $parent[Button].Foreground}" />
|
||||||
|
</Button>
|
||||||
|
<Rectangle
|
||||||
|
Name="SeparatorBorder"
|
||||||
|
Width="{DynamicResource SplitButtonSeparatorWidth}"
|
||||||
|
VerticalAlignment="Stretch"
|
||||||
|
DockPanel.Dock="Right"
|
||||||
|
Fill="Transparent"
|
||||||
|
StrokeThickness="0" />
|
||||||
<Button
|
<Button
|
||||||
Name="PART_PrimaryButton"
|
Name="PART_PrimaryButton"
|
||||||
Padding="{TemplateBinding Padding}"
|
Padding="{TemplateBinding Padding}"
|
||||||
HorizontalAlignment="Stretch"
|
|
||||||
VerticalAlignment="Stretch"
|
|
||||||
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
|
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
|
||||||
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
|
||||||
BorderThickness="{TemplateBinding BorderThickness}"
|
BorderThickness="{TemplateBinding BorderThickness}"
|
||||||
@@ -84,29 +108,7 @@
|
|||||||
FontFamily="{TemplateBinding FontFamily}"
|
FontFamily="{TemplateBinding FontFamily}"
|
||||||
FontSize="{TemplateBinding FontSize}"
|
FontSize="{TemplateBinding FontSize}"
|
||||||
FontWeight="{TemplateBinding FontWeight}"
|
FontWeight="{TemplateBinding FontWeight}"
|
||||||
DockPanel.Dock="Left"
|
|
||||||
Theme="{DynamicResource SemiSplitButtonElement}" />
|
Theme="{DynamicResource SemiSplitButtonElement}" />
|
||||||
<Rectangle
|
|
||||||
Name="SeparatorBorder"
|
|
||||||
Width="{DynamicResource SplitButtonSeparatorWidth}"
|
|
||||||
VerticalAlignment="Stretch"
|
|
||||||
DockPanel.Dock="Left"
|
|
||||||
Fill="Transparent"
|
|
||||||
StrokeThickness="0" />
|
|
||||||
<Button
|
|
||||||
Name="PART_SecondaryButton"
|
|
||||||
Padding="4,0"
|
|
||||||
VerticalAlignment="Stretch"
|
|
||||||
HorizontalContentAlignment="Center"
|
|
||||||
VerticalContentAlignment="Center"
|
|
||||||
BorderThickness="{TemplateBinding BorderThickness}"
|
|
||||||
CornerRadius="0"
|
|
||||||
Theme="{DynamicResource SemiSplitButtonElement}">
|
|
||||||
<PathIcon
|
|
||||||
Theme="{DynamicResource InnerPathIcon}"
|
|
||||||
Data="{DynamicResource SplitButtonIconGlyph}"
|
|
||||||
Foreground="{Binding $parent[Button].Foreground}" />
|
|
||||||
</Button>
|
|
||||||
</DockPanel>
|
</DockPanel>
|
||||||
</Border>
|
</Border>
|
||||||
</ControlTemplate>
|
</ControlTemplate>
|
||||||
|
|||||||
Reference in New Issue
Block a user