diff --git a/demo/Semi.Avalonia.Demo/Pages/CarouselDemo.axaml b/demo/Semi.Avalonia.Demo/Pages/CarouselDemo.axaml new file mode 100644 index 0000000..0388518 --- /dev/null +++ b/demo/Semi.Avalonia.Demo/Pages/CarouselDemo.axaml @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/demo/Semi.Avalonia.Demo/Pages/CarouselDemo.axaml.cs b/demo/Semi.Avalonia.Demo/Pages/CarouselDemo.axaml.cs new file mode 100644 index 0000000..1f96477 --- /dev/null +++ b/demo/Semi.Avalonia.Demo/Pages/CarouselDemo.axaml.cs @@ -0,0 +1,26 @@ +using Avalonia; +using Avalonia.Controls; +using Avalonia.Interactivity; +using Avalonia.Markup.Xaml; + +namespace Semi.Avalonia.Demo.Pages; + +public partial class CarouselDemo : UserControl +{ + public CarouselDemo() + { + InitializeComponent(); + Previous.Click += OnPreviousClick; + Next.Click += OnNextClick; + } + + private void OnPreviousClick(object sender, RoutedEventArgs args) + { + carousel.Previous(); + } + + private void OnNextClick(object sender, RoutedEventArgs args) + { + carousel.Next(); + } +} \ No newline at end of file diff --git a/demo/Semi.Avalonia.Demo/Pages/GridSplitter.axaml b/demo/Semi.Avalonia.Demo/Pages/GridSplitter.axaml new file mode 100644 index 0000000..0928a67 --- /dev/null +++ b/demo/Semi.Avalonia.Demo/Pages/GridSplitter.axaml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + diff --git a/demo/Semi.Avalonia.Demo/Pages/GridSplitter.axaml.cs b/demo/Semi.Avalonia.Demo/Pages/GridSplitter.axaml.cs new file mode 100644 index 0000000..c317cf5 --- /dev/null +++ b/demo/Semi.Avalonia.Demo/Pages/GridSplitter.axaml.cs @@ -0,0 +1,18 @@ +using Avalonia; +using Avalonia.Controls; +using Avalonia.Markup.Xaml; + +namespace Semi.Avalonia.Demo.Pages; + +public partial class GridSplitter : UserControl +{ + public GridSplitter() + { + InitializeComponent(); + } + + private void InitializeComponent() + { + AvaloniaXamlLoader.Load(this); + } +} \ No newline at end of file diff --git a/demo/Semi.Avalonia.Demo/Pages/TabControlDemo.axaml b/demo/Semi.Avalonia.Demo/Pages/TabControlDemo.axaml index 569c522..7b2fde7 100644 --- a/demo/Semi.Avalonia.Demo/Pages/TabControlDemo.axaml +++ b/demo/Semi.Avalonia.Demo/Pages/TabControlDemo.axaml @@ -1,8 +1,12 @@ + x:Class="Semi.Avalonia.Demo.Pages.TabControlDemo" + xmlns="https://github.com/avaloniaui" + xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" + xmlns:d="http://schemas.microsoft.com/expression/blend/2008" + xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" + d:DesignHeight="450" + d:DesignWidth="800" + mc:Ignorable="d"> @@ -11,7 +15,8 @@ @@ -22,7 +27,8 @@ @@ -33,7 +39,8 @@ @@ -44,9 +51,16 @@ + + + Tab 1 + Tab 2 + + diff --git a/demo/Semi.Avalonia.Demo/Views/MainView.axaml b/demo/Semi.Avalonia.Demo/Views/MainView.axaml index 447aba2..4936ae5 100644 --- a/demo/Semi.Avalonia.Demo/Views/MainView.axaml +++ b/demo/Semi.Avalonia.Demo/Views/MainView.axaml @@ -27,6 +27,9 @@ + + + @@ -39,6 +42,9 @@ + + + diff --git a/src/Semi.Avalonia/Controls/Carousel.axaml b/src/Semi.Avalonia/Controls/Carousel.axaml new file mode 100644 index 0000000..7ea121b --- /dev/null +++ b/src/Semi.Avalonia/Controls/Carousel.axaml @@ -0,0 +1,22 @@ + + + + + + + + + + + + diff --git a/src/Semi.Avalonia/Controls/Controls.axaml b/src/Semi.Avalonia/Controls/Controls.axaml index 8f0c1f1..f0f76bc 100644 --- a/src/Semi.Avalonia/Controls/Controls.axaml +++ b/src/Semi.Avalonia/Controls/Controls.axaml @@ -5,12 +5,14 @@ + + @@ -28,11 +30,13 @@ + + diff --git a/src/Semi.Avalonia/Controls/GridSplitter.axaml b/src/Semi.Avalonia/Controls/GridSplitter.axaml new file mode 100644 index 0000000..cce4704 --- /dev/null +++ b/src/Semi.Avalonia/Controls/GridSplitter.axaml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + diff --git a/src/Semi.Avalonia/Controls/MenuFlyoutPresenter.axaml b/src/Semi.Avalonia/Controls/MenuFlyoutPresenter.axaml index 368107f..887c2a1 100644 --- a/src/Semi.Avalonia/Controls/MenuFlyoutPresenter.axaml +++ b/src/Semi.Avalonia/Controls/MenuFlyoutPresenter.axaml @@ -5,6 +5,9 @@ + + + diff --git a/src/Semi.Avalonia/Controls/Popup.axaml b/src/Semi.Avalonia/Controls/Popup.axaml index c643e4a..60d461f 100644 --- a/src/Semi.Avalonia/Controls/Popup.axaml +++ b/src/Semi.Avalonia/Controls/Popup.axaml @@ -20,4 +20,21 @@ + + + + + + + + + + + + diff --git a/src/Semi.Avalonia/Controls/SelectableTextBlock.axaml b/src/Semi.Avalonia/Controls/SelectableTextBlock.axaml index e548da5..9cca943 100644 --- a/src/Semi.Avalonia/Controls/SelectableTextBlock.axaml +++ b/src/Semi.Avalonia/Controls/SelectableTextBlock.axaml @@ -1,4 +1,14 @@ + + + + + @@ -34,6 +44,10 @@ + - - - - @@ -99,7 +98,7 @@ - @@ -122,7 +121,7 @@ - diff --git a/src/Semi.Avalonia/Controls/TabStrip.axaml b/src/Semi.Avalonia/Controls/TabStrip.axaml new file mode 100644 index 0000000..5e73f96 --- /dev/null +++ b/src/Semi.Avalonia/Controls/TabStrip.axaml @@ -0,0 +1,111 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/Semi.Avalonia/Controls/TransitioningContentControl.axaml b/src/Semi.Avalonia/Controls/TransitioningContentControl.axaml new file mode 100644 index 0000000..ef9e87f --- /dev/null +++ b/src/Semi.Avalonia/Controls/TransitioningContentControl.axaml @@ -0,0 +1,19 @@ + + + + + + + + + diff --git a/src/Semi.Avalonia/Themes/Light/GridSplitter.axaml b/src/Semi.Avalonia/Themes/Light/GridSplitter.axaml new file mode 100644 index 0000000..d422063 --- /dev/null +++ b/src/Semi.Avalonia/Themes/Light/GridSplitter.axaml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/Semi.Avalonia/Themes/Light/Light.axaml b/src/Semi.Avalonia/Themes/Light/Light.axaml index 176a422..ba61480 100644 --- a/src/Semi.Avalonia/Themes/Light/Light.axaml +++ b/src/Semi.Avalonia/Themes/Light/Light.axaml @@ -9,6 +9,7 @@ +