From c59bae2c03819753b1da574e0a02d4a984a560a3 Mon Sep 17 00:00:00 2001 From: rabbitism Date: Sun, 29 Jan 2023 18:29:47 +0800 Subject: [PATCH] feat: Add CalendarDatePicker --- .../Pages/CalendarDatePickerDemo.axaml | 25 ++++ .../Pages/CalendarDatePickerDemo.axaml.cs | 18 +++ .../Pages/CalendarDemo.axaml | 1 + demo/Semi.Avalonia.Demo/Views/MainView.axaml | 3 + .../Controls/CalendarDatePicker.axaml | 135 ++++++++++++++++++ src/Semi.Avalonia/Controls/Controls.axaml | 1 + src/Semi.Avalonia/Themes/Light/Calendar.axaml | 2 +- .../Themes/Light/CalendarDatePicker.axaml | 15 ++ .../Themes/Light/DateTimePickerShared.axaml | 1 - src/Semi.Avalonia/Themes/Light/Light.axaml | 1 + 10 files changed, 200 insertions(+), 2 deletions(-) create mode 100644 demo/Semi.Avalonia.Demo/Pages/CalendarDatePickerDemo.axaml create mode 100644 demo/Semi.Avalonia.Demo/Pages/CalendarDatePickerDemo.axaml.cs create mode 100644 src/Semi.Avalonia/Controls/CalendarDatePicker.axaml create mode 100644 src/Semi.Avalonia/Themes/Light/CalendarDatePicker.axaml diff --git a/demo/Semi.Avalonia.Demo/Pages/CalendarDatePickerDemo.axaml b/demo/Semi.Avalonia.Demo/Pages/CalendarDatePickerDemo.axaml new file mode 100644 index 0000000..d9c97c1 --- /dev/null +++ b/demo/Semi.Avalonia.Demo/Pages/CalendarDatePickerDemo.axaml @@ -0,0 +1,25 @@ + + + + + + + + + + diff --git a/demo/Semi.Avalonia.Demo/Pages/CalendarDatePickerDemo.axaml.cs b/demo/Semi.Avalonia.Demo/Pages/CalendarDatePickerDemo.axaml.cs new file mode 100644 index 0000000..08e4a31 --- /dev/null +++ b/demo/Semi.Avalonia.Demo/Pages/CalendarDatePickerDemo.axaml.cs @@ -0,0 +1,18 @@ +using Avalonia; +using Avalonia.Controls; +using Avalonia.Markup.Xaml; + +namespace Semi.Avalonia.Demo.Pages; + +public partial class CalendarDatePickerDemo : UserControl +{ + public CalendarDatePickerDemo() + { + InitializeComponent(); + } + + private void InitializeComponent() + { + AvaloniaXamlLoader.Load(this); + } +} \ No newline at end of file diff --git a/demo/Semi.Avalonia.Demo/Pages/CalendarDemo.axaml b/demo/Semi.Avalonia.Demo/Pages/CalendarDemo.axaml index c8fb1ce..c942a4f 100644 --- a/demo/Semi.Avalonia.Demo/Pages/CalendarDemo.axaml +++ b/demo/Semi.Avalonia.Demo/Pages/CalendarDemo.axaml @@ -9,5 +9,6 @@ mc:Ignorable="d"> + diff --git a/demo/Semi.Avalonia.Demo/Views/MainView.axaml b/demo/Semi.Avalonia.Demo/Views/MainView.axaml index 8d06650..986096e 100644 --- a/demo/Semi.Avalonia.Demo/Views/MainView.axaml +++ b/demo/Semi.Avalonia.Demo/Views/MainView.axaml @@ -30,6 +30,9 @@ + + + diff --git a/src/Semi.Avalonia/Controls/CalendarDatePicker.axaml b/src/Semi.Avalonia/Controls/CalendarDatePicker.axaml new file mode 100644 index 0000000..791c189 --- /dev/null +++ b/src/Semi.Avalonia/Controls/CalendarDatePicker.axaml @@ -0,0 +1,135 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +