feat: Add DropDownButton styles and demos.
This commit is contained in:
1 parent
fffb4d9902
commit
4d5f453895
7 files changed
+1038
-114
No files matched your search
@@ -7,6 +7,7 @@
|
|||||||
[ "Brush", "BrushDemo", "Brush.Brush", "", "" ],
|
[ "Brush", "BrushDemo", "Brush.Brush", "", "" ],
|
||||||
[ "Button", "ButtonDemo", "Brush.ButtonClick", "", "" ],
|
[ "Button", "ButtonDemo", "Brush.ButtonClick", "", "" ],
|
||||||
[ "SplitButton", "SplitButtonDemo", "Brush.ButtonClick", "", "" ],
|
[ "SplitButton", "SplitButtonDemo", "Brush.ButtonClick", "", "" ],
|
||||||
|
[ "DropDownButton", "DropDownButtonDemo", "Brush.ButtonClick", "", "" ],
|
||||||
[ "RepeatButton", "RepeatButtonDemo", "Brush.RepeatButton", "", "" ],
|
[ "RepeatButton", "RepeatButtonDemo", "Brush.RepeatButton", "", "" ],
|
||||||
[ "ToggleButton", "ToggleButtonDemo", "Brush.Toggle", "", "" ],
|
[ "ToggleButton", "ToggleButtonDemo", "Brush.Toggle", "", "" ],
|
||||||
[ "ToggleSwitch", "ToggleSwitchDemo", "Brush.Toggle", "", "" ],
|
[ "ToggleSwitch", "ToggleSwitchDemo", "Brush.Toggle", "", "" ],
|
||||||
|
|||||||
@@ -0,0 +1,249 @@
|
|||||||
|
<UserControl xmlns="https://github.com/avaloniaui"
|
||||||
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
|
xmlns:hc="https://handyorg.github.io/handycontrol"
|
||||||
|
x:Class="HandyControlDemo.UserControl.DropDownButtonDemo"
|
||||||
|
Background="{DynamicResource RegionBrush}">
|
||||||
|
<ScrollViewer>
|
||||||
|
<hc:UniformSpacingPanel ChildWrapping="Wrap"
|
||||||
|
Spacing="32"
|
||||||
|
Margin="32">
|
||||||
|
<hc:UniformSpacingPanel Orientation="Vertical"
|
||||||
|
Spacing="32">
|
||||||
|
<WrapPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<DropDownButton Content="Default"
|
||||||
|
Margin="5">
|
||||||
|
<DropDownButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
<MenuItem Header="Item 3" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</DropDownButton.Flyout>
|
||||||
|
</DropDownButton>
|
||||||
|
<DropDownButton IsEnabled="False"
|
||||||
|
Content="Default"
|
||||||
|
Margin="5" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<DropDownButton Content="Primary"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonPrimary}">
|
||||||
|
<DropDownButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
<MenuItem Header="Item 3" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</DropDownButton.Flyout>
|
||||||
|
</DropDownButton>
|
||||||
|
<DropDownButton IsEnabled="False"
|
||||||
|
Content="Primary"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonPrimary}" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<DropDownButton Content="Success"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonSuccess}">
|
||||||
|
<DropDownButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
<MenuItem Header="Item 3" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</DropDownButton.Flyout>
|
||||||
|
</DropDownButton>
|
||||||
|
<DropDownButton IsEnabled="False"
|
||||||
|
Content="Success"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonSuccess}" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<DropDownButton Content="Info"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonInfo}">
|
||||||
|
<DropDownButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
<MenuItem Header="Item 3" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</DropDownButton.Flyout>
|
||||||
|
</DropDownButton>
|
||||||
|
<DropDownButton IsEnabled="False"
|
||||||
|
Content="Info"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonInfo}" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<DropDownButton Content="Warning"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonWarning}">
|
||||||
|
<DropDownButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
<MenuItem Header="Item 3" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</DropDownButton.Flyout>
|
||||||
|
</DropDownButton>
|
||||||
|
<DropDownButton IsEnabled="False"
|
||||||
|
Content="Warning"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonWarning}" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<DropDownButton Content="Danger"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonDanger}">
|
||||||
|
<DropDownButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
<MenuItem Header="Item 3" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</DropDownButton.Flyout>
|
||||||
|
</DropDownButton>
|
||||||
|
<DropDownButton IsEnabled="False"
|
||||||
|
Content="Danger"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonDanger}" />
|
||||||
|
</StackPanel>
|
||||||
|
</WrapPanel>
|
||||||
|
|
||||||
|
<WrapPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<DropDownButton Content="Calendar"
|
||||||
|
Margin="5"
|
||||||
|
hc:IconElement.Geometry="{StaticResource CalendarGeometry}">
|
||||||
|
<DropDownButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Today" />
|
||||||
|
<MenuItem Header="Tomorrow" />
|
||||||
|
<MenuItem Header="Next Week" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</DropDownButton.Flyout>
|
||||||
|
</DropDownButton>
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<DropDownButton Content="Calendar"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonPrimary}"
|
||||||
|
hc:IconElement.Geometry="{StaticResource CalendarGeometry}">
|
||||||
|
<DropDownButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Today" />
|
||||||
|
<MenuItem Header="Tomorrow" />
|
||||||
|
<MenuItem Header="Next Week" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</DropDownButton.Flyout>
|
||||||
|
</DropDownButton>
|
||||||
|
</StackPanel>
|
||||||
|
</WrapPanel>
|
||||||
|
</hc:UniformSpacingPanel>
|
||||||
|
|
||||||
|
<hc:UniformSpacingPanel Orientation="Vertical"
|
||||||
|
Spacing="32">
|
||||||
|
<WrapPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<DropDownButton Content="Default"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButton.Small}">
|
||||||
|
<DropDownButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</DropDownButton.Flyout>
|
||||||
|
</DropDownButton>
|
||||||
|
<DropDownButton IsEnabled="False"
|
||||||
|
Content="Default"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButton.Small}" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<DropDownButton Content="Primary"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonPrimary.Small}">
|
||||||
|
<DropDownButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</DropDownButton.Flyout>
|
||||||
|
</DropDownButton>
|
||||||
|
<DropDownButton IsEnabled="False"
|
||||||
|
Content="Primary"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonPrimary.Small}" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<DropDownButton Content="Success"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonSuccess.Small}">
|
||||||
|
<DropDownButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</DropDownButton.Flyout>
|
||||||
|
</DropDownButton>
|
||||||
|
<DropDownButton IsEnabled="False"
|
||||||
|
Content="Success"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonSuccess.Small}" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<DropDownButton Content="Info"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonInfo.Small}">
|
||||||
|
<DropDownButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</DropDownButton.Flyout>
|
||||||
|
</DropDownButton>
|
||||||
|
<DropDownButton IsEnabled="False"
|
||||||
|
Content="Info"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonInfo.Small}" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<DropDownButton Content="Warning"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonWarning.Small}">
|
||||||
|
<DropDownButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</DropDownButton.Flyout>
|
||||||
|
</DropDownButton>
|
||||||
|
<DropDownButton IsEnabled="False"
|
||||||
|
Content="Warning"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonWarning.Small}" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<DropDownButton Content="Danger"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonDanger.Small}">
|
||||||
|
<DropDownButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</DropDownButton.Flyout>
|
||||||
|
</DropDownButton>
|
||||||
|
<DropDownButton IsEnabled="False"
|
||||||
|
Content="Danger"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource DropDownButtonDanger.Small}" />
|
||||||
|
</StackPanel>
|
||||||
|
</WrapPanel>
|
||||||
|
</hc:UniformSpacingPanel>
|
||||||
|
</hc:UniformSpacingPanel>
|
||||||
|
</ScrollViewer>
|
||||||
|
</UserControl>
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
namespace HandyControlDemo.UserControl;
|
||||||
|
|
||||||
|
public partial class DropDownButtonDemo : Avalonia.Controls.UserControl
|
||||||
|
{
|
||||||
|
public DropDownButtonDemo()
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -8,116 +8,401 @@
|
|||||||
Spacing="32"
|
Spacing="32"
|
||||||
Margin="32">
|
Margin="32">
|
||||||
<hc:UniformSpacingPanel Orientation="Vertical"
|
<hc:UniformSpacingPanel Orientation="Vertical"
|
||||||
Spacing="16">
|
Spacing="32">
|
||||||
<TextBlock Text="SplitButton (Default)"
|
|
||||||
Theme="{StaticResource TextBlockSubTitleBold}" />
|
|
||||||
<WrapPanel>
|
<WrapPanel>
|
||||||
<SplitButton Content="Default"
|
<StackPanel>
|
||||||
Margin="5">
|
<SplitButton Content="Default"
|
||||||
<SplitButton.Flyout>
|
Margin="5">
|
||||||
<MenuFlyout>
|
<SplitButton.Flyout>
|
||||||
<MenuItem Header="Item 1" />
|
<MenuFlyout>
|
||||||
<MenuItem Header="Item 2" />
|
<MenuItem Header="Item 1" />
|
||||||
<MenuItem Header="Item 3" />
|
<MenuItem Header="Item 2" />
|
||||||
</MenuFlyout>
|
<MenuItem Header="Item 3" />
|
||||||
</SplitButton.Flyout>
|
</MenuFlyout>
|
||||||
</SplitButton>
|
</SplitButton.Flyout>
|
||||||
<SplitButton Content="Disabled"
|
</SplitButton>
|
||||||
IsEnabled="False"
|
<SplitButton IsEnabled="False"
|
||||||
Margin="5" />
|
Content="Default"
|
||||||
<SplitButton Content="Calendar"
|
Margin="5" />
|
||||||
Margin="5"
|
</StackPanel>
|
||||||
hc:IconElement.Geometry="{StaticResource CalendarGeometry}">
|
<StackPanel>
|
||||||
<SplitButton.Flyout>
|
<SplitButton Content="Primary"
|
||||||
<MenuFlyout>
|
Margin="5"
|
||||||
<MenuItem Header="Today" />
|
Theme="{StaticResource SplitButtonPrimary}">
|
||||||
<MenuItem Header="Tomorrow" />
|
<SplitButton.Flyout>
|
||||||
</MenuFlyout>
|
<MenuFlyout>
|
||||||
</SplitButton.Flyout>
|
<MenuItem Header="Item 1" />
|
||||||
</SplitButton>
|
<MenuItem Header="Item 2" />
|
||||||
|
<MenuItem Header="Item 3" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</SplitButton.Flyout>
|
||||||
|
</SplitButton>
|
||||||
|
<SplitButton IsEnabled="False"
|
||||||
|
Content="Primary"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource SplitButtonPrimary}" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<SplitButton Content="Success"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource SplitButtonSuccess}">
|
||||||
|
<SplitButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
<MenuItem Header="Item 3" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</SplitButton.Flyout>
|
||||||
|
</SplitButton>
|
||||||
|
<SplitButton IsEnabled="False"
|
||||||
|
Content="Success"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource SplitButtonSuccess}" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<SplitButton Content="Info"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource SplitButtonInfo}">
|
||||||
|
<SplitButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
<MenuItem Header="Item 3" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</SplitButton.Flyout>
|
||||||
|
</SplitButton>
|
||||||
|
<SplitButton IsEnabled="False"
|
||||||
|
Content="Info"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource SplitButtonInfo}" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<SplitButton Content="Warning"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource SplitButtonWarning}">
|
||||||
|
<SplitButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
<MenuItem Header="Item 3" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</SplitButton.Flyout>
|
||||||
|
</SplitButton>
|
||||||
|
<SplitButton IsEnabled="False"
|
||||||
|
Content="Warning"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource SplitButtonWarning}" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<SplitButton Content="Danger"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource SplitButtonDanger}">
|
||||||
|
<SplitButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
<MenuItem Header="Item 3" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</SplitButton.Flyout>
|
||||||
|
</SplitButton>
|
||||||
|
<SplitButton IsEnabled="False"
|
||||||
|
Content="Danger"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource SplitButtonDanger}" />
|
||||||
|
</StackPanel>
|
||||||
</WrapPanel>
|
</WrapPanel>
|
||||||
|
|
||||||
<TextBlock Text="SplitButton.Small"
|
|
||||||
Theme="{StaticResource TextBlockSubTitleBold}" />
|
|
||||||
<WrapPanel>
|
<WrapPanel>
|
||||||
<SplitButton Content="Default"
|
<StackPanel>
|
||||||
Margin="5"
|
<SplitButton Content="Calendar"
|
||||||
Theme="{StaticResource SplitButton.Small}">
|
Margin="5"
|
||||||
<SplitButton.Flyout>
|
hc:IconElement.Geometry="{StaticResource CalendarGeometry}">
|
||||||
<MenuFlyout>
|
<SplitButton.Flyout>
|
||||||
<MenuItem Header="Item 1" />
|
<MenuFlyout>
|
||||||
<MenuItem Header="Item 2" />
|
<MenuItem Header="Today" />
|
||||||
</MenuFlyout>
|
<MenuItem Header="Tomorrow" />
|
||||||
</SplitButton.Flyout>
|
<MenuItem Header="Next Week" />
|
||||||
</SplitButton>
|
</MenuFlyout>
|
||||||
<SplitButton Content="Disabled"
|
</SplitButton.Flyout>
|
||||||
IsEnabled="False"
|
</SplitButton>
|
||||||
Margin="5"
|
</StackPanel>
|
||||||
Theme="{StaticResource SplitButton.Small}" />
|
<StackPanel>
|
||||||
<SplitButton Content="Clock"
|
<SplitButton Content="Calendar"
|
||||||
Margin="5"
|
Margin="5"
|
||||||
hc:IconElement.Geometry="{StaticResource ClockGeometry}"
|
Theme="{StaticResource SplitButtonPrimary}"
|
||||||
Theme="{StaticResource SplitButton.Small}">
|
hc:IconElement.Geometry="{StaticResource CalendarGeometry}">
|
||||||
<SplitButton.Flyout>
|
<SplitButton.Flyout>
|
||||||
<MenuFlyout>
|
<MenuFlyout>
|
||||||
<MenuItem Header="Now" />
|
<MenuItem Header="Today" />
|
||||||
<MenuItem Header="Later" />
|
<MenuItem Header="Tomorrow" />
|
||||||
</MenuFlyout>
|
<MenuItem Header="Next Week" />
|
||||||
</SplitButton.Flyout>
|
</MenuFlyout>
|
||||||
</SplitButton>
|
</SplitButton.Flyout>
|
||||||
|
</SplitButton>
|
||||||
|
</StackPanel>
|
||||||
|
</WrapPanel>
|
||||||
|
|
||||||
|
<WrapPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<ToggleSplitButton Content="Default"
|
||||||
|
Margin="5"
|
||||||
|
IsChecked="True">
|
||||||
|
<ToggleSplitButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Option A" />
|
||||||
|
<MenuItem Header="Option B" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</ToggleSplitButton.Flyout>
|
||||||
|
</ToggleSplitButton>
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<ToggleSplitButton Content="Primary"
|
||||||
|
Margin="5"
|
||||||
|
IsChecked="True"
|
||||||
|
Theme="{StaticResource ToggleSplitButtonPrimary}">
|
||||||
|
<ToggleSplitButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Option A" />
|
||||||
|
<MenuItem Header="Option B" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</ToggleSplitButton.Flyout>
|
||||||
|
</ToggleSplitButton>
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<ToggleSplitButton Content="Success"
|
||||||
|
Margin="5"
|
||||||
|
IsChecked="True"
|
||||||
|
Theme="{StaticResource ToggleSplitButtonSuccess}">
|
||||||
|
<ToggleSplitButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Option A" />
|
||||||
|
<MenuItem Header="Option B" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</ToggleSplitButton.Flyout>
|
||||||
|
</ToggleSplitButton>
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<ToggleSplitButton Content="Info"
|
||||||
|
Margin="5"
|
||||||
|
IsChecked="True"
|
||||||
|
Theme="{StaticResource ToggleSplitButtonInfo}">
|
||||||
|
<ToggleSplitButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Option A" />
|
||||||
|
<MenuItem Header="Option B" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</ToggleSplitButton.Flyout>
|
||||||
|
</ToggleSplitButton>
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<ToggleSplitButton Content="Warning"
|
||||||
|
Margin="5"
|
||||||
|
IsChecked="True"
|
||||||
|
Theme="{StaticResource ToggleSplitButtonWarning}">
|
||||||
|
<ToggleSplitButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Option A" />
|
||||||
|
<MenuItem Header="Option B" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</ToggleSplitButton.Flyout>
|
||||||
|
</ToggleSplitButton>
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<ToggleSplitButton Content="Danger"
|
||||||
|
Margin="5"
|
||||||
|
IsChecked="True"
|
||||||
|
Theme="{StaticResource ToggleSplitButtonDanger}">
|
||||||
|
<ToggleSplitButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Option A" />
|
||||||
|
<MenuItem Header="Option B" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</ToggleSplitButton.Flyout>
|
||||||
|
</ToggleSplitButton>
|
||||||
|
</StackPanel>
|
||||||
</WrapPanel>
|
</WrapPanel>
|
||||||
</hc:UniformSpacingPanel>
|
</hc:UniformSpacingPanel>
|
||||||
|
|
||||||
<hc:UniformSpacingPanel Orientation="Vertical"
|
<hc:UniformSpacingPanel Orientation="Vertical"
|
||||||
Spacing="16">
|
Spacing="32">
|
||||||
<TextBlock Text="ToggleSplitButton"
|
|
||||||
Theme="{StaticResource TextBlockSubTitleBold}" />
|
|
||||||
<WrapPanel>
|
<WrapPanel>
|
||||||
<ToggleSplitButton Content="Toggle"
|
<StackPanel>
|
||||||
Margin="5">
|
<SplitButton Content="Default"
|
||||||
<ToggleSplitButton.Flyout>
|
Margin="5"
|
||||||
<MenuFlyout>
|
Theme="{StaticResource SplitButton.Small}">
|
||||||
<MenuItem Header="Option A" />
|
<SplitButton.Flyout>
|
||||||
<MenuItem Header="Option B" />
|
<MenuFlyout>
|
||||||
</MenuFlyout>
|
<MenuItem Header="Item 1" />
|
||||||
</ToggleSplitButton.Flyout>
|
<MenuItem Header="Item 2" />
|
||||||
</ToggleSplitButton>
|
</MenuFlyout>
|
||||||
<ToggleSplitButton Content="Checked"
|
</SplitButton.Flyout>
|
||||||
IsChecked="True"
|
</SplitButton>
|
||||||
Margin="5">
|
<SplitButton IsEnabled="False"
|
||||||
<ToggleSplitButton.Flyout>
|
Content="Default"
|
||||||
<MenuFlyout>
|
Margin="5"
|
||||||
<MenuItem Header="Option A" />
|
Theme="{StaticResource SplitButton.Small}" />
|
||||||
<MenuItem Header="Option B" />
|
</StackPanel>
|
||||||
</MenuFlyout>
|
<StackPanel>
|
||||||
</ToggleSplitButton.Flyout>
|
<SplitButton Content="Primary"
|
||||||
</ToggleSplitButton>
|
Margin="5"
|
||||||
<ToggleSplitButton Content="Disabled"
|
Theme="{StaticResource SplitButtonPrimary.Small}">
|
||||||
IsEnabled="False"
|
<SplitButton.Flyout>
|
||||||
Margin="5" />
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</SplitButton.Flyout>
|
||||||
|
</SplitButton>
|
||||||
|
<SplitButton IsEnabled="False"
|
||||||
|
Content="Primary"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource SplitButtonPrimary.Small}" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<SplitButton Content="Success"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource SplitButtonSuccess.Small}">
|
||||||
|
<SplitButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</SplitButton.Flyout>
|
||||||
|
</SplitButton>
|
||||||
|
<SplitButton IsEnabled="False"
|
||||||
|
Content="Success"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource SplitButtonSuccess.Small}" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<SplitButton Content="Info"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource SplitButtonInfo.Small}">
|
||||||
|
<SplitButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</SplitButton.Flyout>
|
||||||
|
</SplitButton>
|
||||||
|
<SplitButton IsEnabled="False"
|
||||||
|
Content="Info"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource SplitButtonInfo.Small}" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<SplitButton Content="Warning"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource SplitButtonWarning.Small}">
|
||||||
|
<SplitButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</SplitButton.Flyout>
|
||||||
|
</SplitButton>
|
||||||
|
<SplitButton IsEnabled="False"
|
||||||
|
Content="Warning"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource SplitButtonWarning.Small}" />
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<SplitButton Content="Danger"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource SplitButtonDanger.Small}">
|
||||||
|
<SplitButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Item 1" />
|
||||||
|
<MenuItem Header="Item 2" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</SplitButton.Flyout>
|
||||||
|
</SplitButton>
|
||||||
|
<SplitButton IsEnabled="False"
|
||||||
|
Content="Danger"
|
||||||
|
Margin="5"
|
||||||
|
Theme="{StaticResource SplitButtonDanger.Small}" />
|
||||||
|
</StackPanel>
|
||||||
</WrapPanel>
|
</WrapPanel>
|
||||||
|
|
||||||
<TextBlock Text="ToggleSplitButton.Small"
|
|
||||||
Theme="{StaticResource TextBlockSubTitleBold}" />
|
|
||||||
<WrapPanel>
|
<WrapPanel>
|
||||||
<ToggleSplitButton Content="Toggle"
|
<StackPanel>
|
||||||
Margin="5"
|
<ToggleSplitButton Content="Default"
|
||||||
Theme="{StaticResource ToggleSplitButton.Small}">
|
Margin="5"
|
||||||
<ToggleSplitButton.Flyout>
|
IsChecked="True"
|
||||||
<MenuFlyout>
|
Theme="{StaticResource ToggleSplitButton.Small}">
|
||||||
<MenuItem Header="Option A" />
|
<ToggleSplitButton.Flyout>
|
||||||
<MenuItem Header="Option B" />
|
<MenuFlyout>
|
||||||
</MenuFlyout>
|
<MenuItem Header="Option A" />
|
||||||
</ToggleSplitButton.Flyout>
|
<MenuItem Header="Option B" />
|
||||||
</ToggleSplitButton>
|
</MenuFlyout>
|
||||||
<ToggleSplitButton Content="Checked"
|
</ToggleSplitButton.Flyout>
|
||||||
IsChecked="True"
|
</ToggleSplitButton>
|
||||||
Margin="5"
|
</StackPanel>
|
||||||
Theme="{StaticResource ToggleSplitButton.Small}" />
|
<StackPanel>
|
||||||
<ToggleSplitButton Content="Disabled"
|
<ToggleSplitButton Content="Primary"
|
||||||
IsEnabled="False"
|
Margin="5"
|
||||||
Margin="5"
|
IsChecked="True"
|
||||||
Theme="{StaticResource ToggleSplitButton.Small}" />
|
Theme="{StaticResource ToggleSplitButtonPrimary.Small}">
|
||||||
|
<ToggleSplitButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Option A" />
|
||||||
|
<MenuItem Header="Option B" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</ToggleSplitButton.Flyout>
|
||||||
|
</ToggleSplitButton>
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<ToggleSplitButton Content="Success"
|
||||||
|
Margin="5"
|
||||||
|
IsChecked="True"
|
||||||
|
Theme="{StaticResource ToggleSplitButtonSuccess.Small}">
|
||||||
|
<ToggleSplitButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Option A" />
|
||||||
|
<MenuItem Header="Option B" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</ToggleSplitButton.Flyout>
|
||||||
|
</ToggleSplitButton>
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<ToggleSplitButton Content="Info"
|
||||||
|
Margin="5"
|
||||||
|
IsChecked="True"
|
||||||
|
Theme="{StaticResource ToggleSplitButtonInfo.Small}">
|
||||||
|
<ToggleSplitButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Option A" />
|
||||||
|
<MenuItem Header="Option B" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</ToggleSplitButton.Flyout>
|
||||||
|
</ToggleSplitButton>
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<ToggleSplitButton Content="Warning"
|
||||||
|
Margin="5"
|
||||||
|
IsChecked="True"
|
||||||
|
Theme="{StaticResource ToggleSplitButtonWarning.Small}">
|
||||||
|
<ToggleSplitButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Option A" />
|
||||||
|
<MenuItem Header="Option B" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</ToggleSplitButton.Flyout>
|
||||||
|
</ToggleSplitButton>
|
||||||
|
</StackPanel>
|
||||||
|
<StackPanel>
|
||||||
|
<ToggleSplitButton Content="Danger"
|
||||||
|
Margin="5"
|
||||||
|
IsChecked="True"
|
||||||
|
Theme="{StaticResource ToggleSplitButtonDanger.Small}">
|
||||||
|
<ToggleSplitButton.Flyout>
|
||||||
|
<MenuFlyout>
|
||||||
|
<MenuItem Header="Option A" />
|
||||||
|
<MenuItem Header="Option B" />
|
||||||
|
</MenuFlyout>
|
||||||
|
</ToggleSplitButton.Flyout>
|
||||||
|
</ToggleSplitButton>
|
||||||
|
</StackPanel>
|
||||||
</WrapPanel>
|
</WrapPanel>
|
||||||
</hc:UniformSpacingPanel>
|
</hc:UniformSpacingPanel>
|
||||||
</hc:UniformSpacingPanel>
|
</hc:UniformSpacingPanel>
|
||||||
|
|||||||
@@ -0,0 +1,239 @@
|
|||||||
|
<ResourceDictionary xmlns="https://github.com/avaloniaui"
|
||||||
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
|
x:ClassModifier="internal"
|
||||||
|
xmlns:hc="clr-namespace:HandyControl.Controls">
|
||||||
|
|
||||||
|
<ControlTheme x:Key="DropDownButtonBaseStyle"
|
||||||
|
TargetType="DropDownButton">
|
||||||
|
<Setter Property="Height"
|
||||||
|
Value="{StaticResource DefaultControlHeight}" />
|
||||||
|
<Setter Property="Padding"
|
||||||
|
Value="{StaticResource DefaultControlPadding}" />
|
||||||
|
<Setter Property="HorizontalAlignment"
|
||||||
|
Value="Left" />
|
||||||
|
<Setter Property="VerticalAlignment"
|
||||||
|
Value="Center" />
|
||||||
|
<Setter Property="HorizontalContentAlignment"
|
||||||
|
Value="Center" />
|
||||||
|
<Setter Property="VerticalContentAlignment"
|
||||||
|
Value="Center" />
|
||||||
|
<Setter Property="Background"
|
||||||
|
Value="{DynamicResource RegionBrush}" />
|
||||||
|
<Setter Property="Foreground"
|
||||||
|
Value="{DynamicResource PrimaryTextBrush}" />
|
||||||
|
<Setter Property="BorderBrush"
|
||||||
|
Value="{DynamicResource BorderBrush}" />
|
||||||
|
<Setter Property="BorderThickness"
|
||||||
|
Value="1" />
|
||||||
|
<Setter Property="hc:BorderElement.CornerRadius"
|
||||||
|
Value="{StaticResource DefaultCornerRadius}" />
|
||||||
|
<Setter Property="CornerRadius"
|
||||||
|
Value="{Binding $self.(hc:BorderElement.CornerRadius)}" />
|
||||||
|
<Setter Property="Template">
|
||||||
|
<ControlTemplate>
|
||||||
|
<Panel>
|
||||||
|
<Border Background="{TemplateBinding Background}"
|
||||||
|
CornerRadius="{TemplateBinding CornerRadius}" />
|
||||||
|
<Border x:Name="RootBorder"
|
||||||
|
BorderThickness="{TemplateBinding BorderThickness}"
|
||||||
|
BorderBrush="{TemplateBinding BorderBrush}"
|
||||||
|
CornerRadius="{TemplateBinding CornerRadius}">
|
||||||
|
<Grid ColumnDefinitions="*,Auto"
|
||||||
|
Margin="{TemplateBinding Padding}">
|
||||||
|
<StackPanel Grid.Column="0"
|
||||||
|
Orientation="Horizontal"
|
||||||
|
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
|
||||||
|
VerticalAlignment="{TemplateBinding VerticalContentAlignment}">
|
||||||
|
<Path Width="{TemplateBinding hc:IconElement.Width}"
|
||||||
|
Height="{TemplateBinding hc:IconElement.Height}"
|
||||||
|
Fill="{TemplateBinding Foreground}"
|
||||||
|
IsVisible="{Binding Path=(hc:IconElement.Geometry), RelativeSource={RelativeSource TemplatedParent}, Converter={x:Static ObjectConverters.IsNotNull}}"
|
||||||
|
Stretch="Uniform"
|
||||||
|
Data="{TemplateBinding hc:IconElement.Geometry}" />
|
||||||
|
<ContentPresenter x:Name="PART_ContentPresenter"
|
||||||
|
RecognizesAccessKey="True"
|
||||||
|
VerticalAlignment="Center"
|
||||||
|
Content="{TemplateBinding Content}"
|
||||||
|
ContentTemplate="{TemplateBinding ContentTemplate}"
|
||||||
|
IsVisible="{Binding $self.Content, Converter={x:Static ObjectConverters.IsNotNull}}"
|
||||||
|
Margin="{Binding Path=(hc:IconElement.Geometry), RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource GeometrySpacingConverter}, ConverterParameter='6,0,0,0'}" />
|
||||||
|
</StackPanel>
|
||||||
|
<Path Grid.Column="1"
|
||||||
|
Width="8"
|
||||||
|
Height="5"
|
||||||
|
Margin="8,0,0,0"
|
||||||
|
Stretch="Uniform"
|
||||||
|
VerticalAlignment="Center"
|
||||||
|
Fill="{TemplateBinding Foreground}"
|
||||||
|
IsHitTestVisible="False"
|
||||||
|
Data="M1939 486L2029 576L1024 1581L19 576L109 486L1024 1401L1939 486Z" />
|
||||||
|
</Grid>
|
||||||
|
</Border>
|
||||||
|
</Panel>
|
||||||
|
</ControlTemplate>
|
||||||
|
</Setter>
|
||||||
|
|
||||||
|
<Style Selector="^:pointerover">
|
||||||
|
<Setter Property="Opacity"
|
||||||
|
Value="0.9" />
|
||||||
|
</Style>
|
||||||
|
|
||||||
|
<Style Selector="^:pressed">
|
||||||
|
<Setter Property="Opacity"
|
||||||
|
Value="0.6" />
|
||||||
|
</Style>
|
||||||
|
|
||||||
|
<Style Selector="^:flyout-open">
|
||||||
|
<Setter Property="Opacity"
|
||||||
|
Value="0.6" />
|
||||||
|
</Style>
|
||||||
|
|
||||||
|
<Style Selector="^:disabled">
|
||||||
|
<Setter Property="Opacity"
|
||||||
|
Value="0.4" />
|
||||||
|
</Style>
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="{x:Type DropDownButton}"
|
||||||
|
BasedOn="{StaticResource DropDownButtonBaseStyle}"
|
||||||
|
TargetType="DropDownButton">
|
||||||
|
<Setter Property="Foreground"
|
||||||
|
Value="{DynamicResource PrimaryTextBrush}" />
|
||||||
|
|
||||||
|
<Style Selector="^:pointerover">
|
||||||
|
<Setter Property="Background"
|
||||||
|
Value="{DynamicResource SecondaryRegionBrush}" />
|
||||||
|
</Style>
|
||||||
|
|
||||||
|
<Style Selector="^:pressed">
|
||||||
|
<Setter Property="Background"
|
||||||
|
Value="{DynamicResource BorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
|
||||||
|
<Style Selector="^:flyout-open">
|
||||||
|
<Setter Property="Background"
|
||||||
|
Value="{DynamicResource BorderBrush}" />
|
||||||
|
</Style>
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="DropDownButton.Small"
|
||||||
|
BasedOn="{StaticResource {x:Type DropDownButton}}"
|
||||||
|
TargetType="DropDownButton">
|
||||||
|
<Setter Property="Height"
|
||||||
|
Value="20" />
|
||||||
|
<Setter Property="Padding"
|
||||||
|
Value="6,1" />
|
||||||
|
<Setter Property="hc:IconElement.Height"
|
||||||
|
Value="12" />
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="DropDownButtonPrimary"
|
||||||
|
BasedOn="{StaticResource DropDownButtonBaseStyle}"
|
||||||
|
TargetType="DropDownButton">
|
||||||
|
<Setter Property="Background"
|
||||||
|
Value="{DynamicResource PrimaryBrush}" />
|
||||||
|
<Setter Property="BorderBrush"
|
||||||
|
Value="{DynamicResource PrimaryBrush}" />
|
||||||
|
<Setter Property="Foreground"
|
||||||
|
Value="{DynamicResource TextIconBrush}" />
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="DropDownButtonPrimary.Small"
|
||||||
|
BasedOn="{StaticResource DropDownButtonPrimary}"
|
||||||
|
TargetType="DropDownButton">
|
||||||
|
<Setter Property="Height"
|
||||||
|
Value="20" />
|
||||||
|
<Setter Property="Padding"
|
||||||
|
Value="6,1" />
|
||||||
|
<Setter Property="hc:IconElement.Height"
|
||||||
|
Value="12" />
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="DropDownButtonSuccess"
|
||||||
|
BasedOn="{StaticResource DropDownButtonBaseStyle}"
|
||||||
|
TargetType="DropDownButton">
|
||||||
|
<Setter Property="Background"
|
||||||
|
Value="{DynamicResource SuccessBrush}" />
|
||||||
|
<Setter Property="BorderBrush"
|
||||||
|
Value="{DynamicResource SuccessBrush}" />
|
||||||
|
<Setter Property="Foreground"
|
||||||
|
Value="{DynamicResource TextIconBrush}" />
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="DropDownButtonSuccess.Small"
|
||||||
|
BasedOn="{StaticResource DropDownButtonSuccess}"
|
||||||
|
TargetType="DropDownButton">
|
||||||
|
<Setter Property="Height"
|
||||||
|
Value="20" />
|
||||||
|
<Setter Property="Padding"
|
||||||
|
Value="6,1" />
|
||||||
|
<Setter Property="hc:IconElement.Height"
|
||||||
|
Value="12" />
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="DropDownButtonInfo"
|
||||||
|
BasedOn="{StaticResource DropDownButtonBaseStyle}"
|
||||||
|
TargetType="DropDownButton">
|
||||||
|
<Setter Property="Background"
|
||||||
|
Value="{DynamicResource InfoBrush}" />
|
||||||
|
<Setter Property="BorderBrush"
|
||||||
|
Value="{DynamicResource InfoBrush}" />
|
||||||
|
<Setter Property="Foreground"
|
||||||
|
Value="{DynamicResource TextIconBrush}" />
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="DropDownButtonInfo.Small"
|
||||||
|
BasedOn="{StaticResource DropDownButtonInfo}"
|
||||||
|
TargetType="DropDownButton">
|
||||||
|
<Setter Property="Height"
|
||||||
|
Value="20" />
|
||||||
|
<Setter Property="Padding"
|
||||||
|
Value="6,1" />
|
||||||
|
<Setter Property="hc:IconElement.Height"
|
||||||
|
Value="12" />
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="DropDownButtonWarning"
|
||||||
|
BasedOn="{StaticResource DropDownButtonBaseStyle}"
|
||||||
|
TargetType="DropDownButton">
|
||||||
|
<Setter Property="Background"
|
||||||
|
Value="{DynamicResource WarningBrush}" />
|
||||||
|
<Setter Property="BorderBrush"
|
||||||
|
Value="{DynamicResource WarningBrush}" />
|
||||||
|
<Setter Property="Foreground"
|
||||||
|
Value="{DynamicResource TextIconBrush}" />
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="DropDownButtonWarning.Small"
|
||||||
|
BasedOn="{StaticResource DropDownButtonWarning}"
|
||||||
|
TargetType="DropDownButton">
|
||||||
|
<Setter Property="Height"
|
||||||
|
Value="20" />
|
||||||
|
<Setter Property="Padding"
|
||||||
|
Value="6,1" />
|
||||||
|
<Setter Property="hc:IconElement.Height"
|
||||||
|
Value="12" />
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="DropDownButtonDanger"
|
||||||
|
BasedOn="{StaticResource DropDownButtonBaseStyle}"
|
||||||
|
TargetType="DropDownButton">
|
||||||
|
<Setter Property="Background"
|
||||||
|
Value="{DynamicResource DangerBrush}" />
|
||||||
|
<Setter Property="BorderBrush"
|
||||||
|
Value="{DynamicResource DangerBrush}" />
|
||||||
|
<Setter Property="Foreground"
|
||||||
|
Value="{DynamicResource TextIconBrush}" />
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="DropDownButtonDanger.Small"
|
||||||
|
BasedOn="{StaticResource DropDownButtonDanger}"
|
||||||
|
TargetType="DropDownButton">
|
||||||
|
<Setter Property="Height"
|
||||||
|
Value="20" />
|
||||||
|
<Setter Property="Padding"
|
||||||
|
Value="6,1" />
|
||||||
|
<Setter Property="hc:IconElement.Height"
|
||||||
|
Value="12" />
|
||||||
|
</ControlTheme>
|
||||||
|
</ResourceDictionary>
|
||||||
@@ -33,6 +33,7 @@
|
|||||||
<MergeResourceInclude Source="avares://HandyControl/Themes/Styles/Window.axaml" />
|
<MergeResourceInclude Source="avares://HandyControl/Themes/Styles/Window.axaml" />
|
||||||
<MergeResourceInclude Source="avares://HandyControl/Themes/Styles/Button.axaml" />
|
<MergeResourceInclude Source="avares://HandyControl/Themes/Styles/Button.axaml" />
|
||||||
<MergeResourceInclude Source="avares://HandyControl/Themes/Styles/SplitButton.axaml" />
|
<MergeResourceInclude Source="avares://HandyControl/Themes/Styles/SplitButton.axaml" />
|
||||||
|
<MergeResourceInclude Source="avares://HandyControl/Themes/Styles/DropDownButton.axaml" />
|
||||||
<MergeResourceInclude Source="avares://HandyControl/Themes/Styles/HyperlinkButton.axaml" />
|
<MergeResourceInclude Source="avares://HandyControl/Themes/Styles/HyperlinkButton.axaml" />
|
||||||
<MergeResourceInclude Source="avares://HandyControl/Themes/Styles/RepeatButton.axaml" />
|
<MergeResourceInclude Source="avares://HandyControl/Themes/Styles/RepeatButton.axaml" />
|
||||||
<MergeResourceInclude Source="avares://HandyControl/Themes/Styles/ToggleButton.axaml" />
|
<MergeResourceInclude Source="avares://HandyControl/Themes/Styles/ToggleButton.axaml" />
|
||||||
|
|||||||
@@ -40,28 +40,18 @@
|
|||||||
</Setter>
|
</Setter>
|
||||||
|
|
||||||
<Style Selector="^:pointerover /template/ Border#border">
|
<Style Selector="^:pointerover /template/ Border#border">
|
||||||
<Setter Property="Background"
|
<Setter Property="Opacity"
|
||||||
Value="{DynamicResource SecondaryRegionBrush}" />
|
Value="0.9" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^:pressed /template/ Border#border">
|
<Style Selector="^:pressed /template/ Border#border">
|
||||||
<Setter Property="Background"
|
<Setter Property="Opacity"
|
||||||
Value="{DynamicResource BorderBrush}" />
|
Value="0.6" />
|
||||||
</Style>
|
</Style>
|
||||||
|
|
||||||
<Style Selector="^[Tag=flyout-open] /template/ Border#border">
|
<Style Selector="^[Tag=flyout-open] /template/ Border#border">
|
||||||
<Setter Property="Background"
|
<Setter Property="Opacity"
|
||||||
Value="{DynamicResource BorderBrush}" />
|
Value="0.6" />
|
||||||
</Style>
|
|
||||||
|
|
||||||
<Style Selector="^[Tag=checked] /template/ Border#border">
|
|
||||||
<Setter Property="Background"
|
|
||||||
Value="{DynamicResource PrimaryBrush}" />
|
|
||||||
</Style>
|
|
||||||
|
|
||||||
<Style Selector="^[Tag=checked]">
|
|
||||||
<Setter Property="Foreground"
|
|
||||||
Value="{DynamicResource TextIconBrush}" />
|
|
||||||
</Style>
|
</Style>
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
|
|
||||||
@@ -196,6 +186,116 @@
|
|||||||
Value="12" />
|
Value="12" />
|
||||||
</ControlTheme>
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="SplitButtonPrimary"
|
||||||
|
BasedOn="{StaticResource SplitButtonBaseStyle}"
|
||||||
|
TargetType="SplitButton">
|
||||||
|
<Setter Property="Background"
|
||||||
|
Value="{DynamicResource PrimaryBrush}" />
|
||||||
|
<Setter Property="BorderBrush"
|
||||||
|
Value="{DynamicResource PrimaryBrush}" />
|
||||||
|
<Setter Property="Foreground"
|
||||||
|
Value="{DynamicResource TextIconBrush}" />
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="SplitButtonPrimary.Small"
|
||||||
|
BasedOn="{StaticResource SplitButtonPrimary}"
|
||||||
|
TargetType="SplitButton">
|
||||||
|
<Setter Property="Height"
|
||||||
|
Value="20" />
|
||||||
|
<Setter Property="Padding"
|
||||||
|
Value="6,1" />
|
||||||
|
<Setter Property="hc:IconElement.Height"
|
||||||
|
Value="12" />
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="SplitButtonSuccess"
|
||||||
|
BasedOn="{StaticResource SplitButtonBaseStyle}"
|
||||||
|
TargetType="SplitButton">
|
||||||
|
<Setter Property="Background"
|
||||||
|
Value="{DynamicResource SuccessBrush}" />
|
||||||
|
<Setter Property="BorderBrush"
|
||||||
|
Value="{DynamicResource SuccessBrush}" />
|
||||||
|
<Setter Property="Foreground"
|
||||||
|
Value="{DynamicResource TextIconBrush}" />
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="SplitButtonSuccess.Small"
|
||||||
|
BasedOn="{StaticResource SplitButtonSuccess}"
|
||||||
|
TargetType="SplitButton">
|
||||||
|
<Setter Property="Height"
|
||||||
|
Value="20" />
|
||||||
|
<Setter Property="Padding"
|
||||||
|
Value="6,1" />
|
||||||
|
<Setter Property="hc:IconElement.Height"
|
||||||
|
Value="12" />
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="SplitButtonInfo"
|
||||||
|
BasedOn="{StaticResource SplitButtonBaseStyle}"
|
||||||
|
TargetType="SplitButton">
|
||||||
|
<Setter Property="Background"
|
||||||
|
Value="{DynamicResource InfoBrush}" />
|
||||||
|
<Setter Property="BorderBrush"
|
||||||
|
Value="{DynamicResource InfoBrush}" />
|
||||||
|
<Setter Property="Foreground"
|
||||||
|
Value="{DynamicResource TextIconBrush}" />
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="SplitButtonInfo.Small"
|
||||||
|
BasedOn="{StaticResource SplitButtonInfo}"
|
||||||
|
TargetType="SplitButton">
|
||||||
|
<Setter Property="Height"
|
||||||
|
Value="20" />
|
||||||
|
<Setter Property="Padding"
|
||||||
|
Value="6,1" />
|
||||||
|
<Setter Property="hc:IconElement.Height"
|
||||||
|
Value="12" />
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="SplitButtonWarning"
|
||||||
|
BasedOn="{StaticResource SplitButtonBaseStyle}"
|
||||||
|
TargetType="SplitButton">
|
||||||
|
<Setter Property="Background"
|
||||||
|
Value="{DynamicResource WarningBrush}" />
|
||||||
|
<Setter Property="BorderBrush"
|
||||||
|
Value="{DynamicResource WarningBrush}" />
|
||||||
|
<Setter Property="Foreground"
|
||||||
|
Value="{DynamicResource TextIconBrush}" />
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="SplitButtonWarning.Small"
|
||||||
|
BasedOn="{StaticResource SplitButtonWarning}"
|
||||||
|
TargetType="SplitButton">
|
||||||
|
<Setter Property="Height"
|
||||||
|
Value="20" />
|
||||||
|
<Setter Property="Padding"
|
||||||
|
Value="6,1" />
|
||||||
|
<Setter Property="hc:IconElement.Height"
|
||||||
|
Value="12" />
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="SplitButtonDanger"
|
||||||
|
BasedOn="{StaticResource SplitButtonBaseStyle}"
|
||||||
|
TargetType="SplitButton">
|
||||||
|
<Setter Property="Background"
|
||||||
|
Value="{DynamicResource DangerBrush}" />
|
||||||
|
<Setter Property="BorderBrush"
|
||||||
|
Value="{DynamicResource DangerBrush}" />
|
||||||
|
<Setter Property="Foreground"
|
||||||
|
Value="{DynamicResource TextIconBrush}" />
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
|
<ControlTheme x:Key="SplitButtonDanger.Small"
|
||||||
|
BasedOn="{StaticResource SplitButtonDanger}"
|
||||||
|
TargetType="SplitButton">
|
||||||
|
<Setter Property="Height"
|
||||||
|
Value="20" />
|
||||||
|
<Setter Property="Padding"
|
||||||
|
Value="6,1" />
|
||||||
|
<Setter Property="hc:IconElement.Height"
|
||||||
|
Value="12" />
|
||||||
|
</ControlTheme>
|
||||||
|
|
||||||
<!-- ToggleSplitButton uses StyleKeyOverride => typeof(SplitButton), so it inherits the
|
<!-- ToggleSplitButton uses StyleKeyOverride => typeof(SplitButton), so it inherits the
|
||||||
SplitButton default theme automatically. The :checked dark mask is defined in
|
SplitButton default theme automatically. The :checked dark mask is defined in
|
||||||
SplitButtonBaseStyle and only triggers when InternalIsChecked == true (i.e. on
|
SplitButtonBaseStyle and only triggers when InternalIsChecked == true (i.e. on
|
||||||
@@ -204,4 +304,44 @@
|
|||||||
<ControlTheme x:Key="ToggleSplitButton.Small"
|
<ControlTheme x:Key="ToggleSplitButton.Small"
|
||||||
BasedOn="{StaticResource SplitButton.Small}"
|
BasedOn="{StaticResource SplitButton.Small}"
|
||||||
TargetType="ToggleSplitButton" />
|
TargetType="ToggleSplitButton" />
|
||||||
|
|
||||||
|
<ControlTheme x:Key="ToggleSplitButtonPrimary"
|
||||||
|
BasedOn="{StaticResource SplitButtonPrimary}"
|
||||||
|
TargetType="ToggleSplitButton" />
|
||||||
|
|
||||||
|
<ControlTheme x:Key="ToggleSplitButtonPrimary.Small"
|
||||||
|
BasedOn="{StaticResource SplitButtonPrimary.Small}"
|
||||||
|
TargetType="ToggleSplitButton" />
|
||||||
|
|
||||||
|
<ControlTheme x:Key="ToggleSplitButtonSuccess"
|
||||||
|
BasedOn="{StaticResource SplitButtonSuccess}"
|
||||||
|
TargetType="ToggleSplitButton" />
|
||||||
|
|
||||||
|
<ControlTheme x:Key="ToggleSplitButtonSuccess.Small"
|
||||||
|
BasedOn="{StaticResource SplitButtonSuccess.Small}"
|
||||||
|
TargetType="ToggleSplitButton" />
|
||||||
|
|
||||||
|
<ControlTheme x:Key="ToggleSplitButtonInfo"
|
||||||
|
BasedOn="{StaticResource SplitButtonInfo}"
|
||||||
|
TargetType="ToggleSplitButton" />
|
||||||
|
|
||||||
|
<ControlTheme x:Key="ToggleSplitButtonInfo.Small"
|
||||||
|
BasedOn="{StaticResource SplitButtonInfo.Small}"
|
||||||
|
TargetType="ToggleSplitButton" />
|
||||||
|
|
||||||
|
<ControlTheme x:Key="ToggleSplitButtonWarning"
|
||||||
|
BasedOn="{StaticResource SplitButtonWarning}"
|
||||||
|
TargetType="ToggleSplitButton" />
|
||||||
|
|
||||||
|
<ControlTheme x:Key="ToggleSplitButtonWarning.Small"
|
||||||
|
BasedOn="{StaticResource SplitButtonWarning.Small}"
|
||||||
|
TargetType="ToggleSplitButton" />
|
||||||
|
|
||||||
|
<ControlTheme x:Key="ToggleSplitButtonDanger"
|
||||||
|
BasedOn="{StaticResource SplitButtonDanger}"
|
||||||
|
TargetType="ToggleSplitButton" />
|
||||||
|
|
||||||
|
<ControlTheme x:Key="ToggleSplitButtonDanger.Small"
|
||||||
|
BasedOn="{StaticResource SplitButtonDanger.Small}"
|
||||||
|
TargetType="ToggleSplitButton" />
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
Reference in new issue
Block a user