feat: add ThemeVariant demo.

This commit is contained in:
rabbitism 2023-02-04 14:15:19 +08:00
parent 8e10cd774a
commit 5ba21de6bb
2 changed files with 28 additions and 3 deletions

View File

@ -7,7 +7,15 @@
d:DesignHeight="450"
d:DesignWidth="800"
mc:Ignorable="d">
<ThemeVariantScope>
<TextBox Width="100" />
<Grid>
<ThemeVariantScope Name="scope">
<Border Theme="{StaticResource CardBorder}">
<StackPanel>
<DatePicker />
<CalendarDatePicker />
<ToggleSwitch Content="Switch Theme" IsCheckedChanged="Switch_OnIsCheckedChanged" />
</StackPanel>
</Border>
</ThemeVariantScope>
</Grid>
</UserControl>

View File

@ -1,13 +1,30 @@
using Avalonia;
using Avalonia.Controls;
using Avalonia.Interactivity;
using Avalonia.Markup.Xaml;
using Avalonia.Styling;
namespace Semi.Avalonia.Demo.Pages;
public partial class ThemeVariantDemo : UserControl
{
private ThemeVariant _variant = ThemeVariant.Default;
public ThemeVariantDemo()
{
InitializeComponent();
}
private void Switch_OnIsCheckedChanged(object sender, RoutedEventArgs e)
{
if (_variant == ThemeVariant.Dark)
{
scope.RequestedThemeVariant = ThemeVariant.Default;
_variant = ThemeVariant.Default;
}
else
{
scope.RequestedThemeVariant = ThemeVariant.Dark;
_variant = ThemeVariant.Dark;
}
}
}