Merge branch 'main' into dialog

This commit is contained in:
Dong Bin
2024-01-27 14:07:04 +08:00
committed by GitHub
28 changed files with 1772 additions and 16 deletions

View File

@@ -13,10 +13,23 @@
mc:Ignorable="d">
<StackPanel Margin="20" Spacing="20">
<u:ButtonGroup Classes="Primary Solid" ItemsSource="{Binding Items}" />
<u:ButtonGroup Classes="Primary" ItemsSource="{Binding Items}" />
<u:ButtonGroup Classes="Primary Borderless" ItemsSource="{Binding Items}" />
<u:ButtonGroup Classes="Primary Large" ItemsSource="{Binding Items}" />
<u:ButtonGroup Classes="Primary Small" ItemsSource="{Binding Items}" />
<u:ButtonGroup Classes="Primary Solid"
CommandBinding="{Binding InvokeCommand}"
ItemsSource="{Binding Items}" >
<u:ButtonGroup.ItemTemplate>
<DataTemplate x:DataType="vm:ButtonItem">
<TextBlock>
<Run Text="🐼"></Run>
<Run Text="{Binding Name}"></Run>
</TextBlock>
</DataTemplate>
</u:ButtonGroup.ItemTemplate>
</u:ButtonGroup>
<u:ButtonGroup Classes="Primary"
ContentBinding="{Binding Name}"
CommandBinding="{Binding InvokeCommand}"
ItemsSource="{Binding Items}" >
</u:ButtonGroup>
</StackPanel>
</UserControl>

View File

@@ -0,0 +1,30 @@
<UserControl
x:Class="Ursa.Demo.Pages.EnumSelectorDemo"
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"
xmlns:u="https://irihi.tech/ursa"
xmlns:vm="clr-namespace:Ursa.Demo.ViewModels;assembly=Ursa.Demo"
d:DesignHeight="450"
d:DesignWidth="800"
x:CompileBindings="True"
x:DataType="vm:EnumSelectorDemoViewModel"
mc:Ignorable="d">
<StackPanel>
<ToggleSwitch Name="description" Content="Show Description" />
<TextBlock Text="Select Type" />
<ComboBox
Width="200"
DisplayMemberBinding="{Binding Name}"
ItemsSource="{Binding Types}"
SelectedItem="{Binding SelectedType}" />
<TextBlock Text="Select Value" />
<u:EnumSelector
Width="200"
DisplayDescription="{Binding #description.IsChecked}"
EnumType="{Binding SelectedType}"
Value="{Binding Value}" />
<TextBlock Text="{Binding Value}" />
</StackPanel>
</UserControl>

View File

@@ -0,0 +1,13 @@
using Avalonia;
using Avalonia.Controls;
using Avalonia.Markup.Xaml;
namespace Ursa.Demo.Pages;
public partial class EnumSelectorDemo : UserControl
{
public EnumSelectorDemo()
{
InitializeComponent();
}
}

View File

@@ -0,0 +1,52 @@
<UserControl
x:Class="Ursa.Demo.Pages.RangeSliderDemo"
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"
xmlns:u="https://irihi.tech/ursa"
xmlns:vm="using:Ursa.Demo.ViewModels"
d:DesignHeight="450"
d:DesignWidth="800"
x:CompileBindings="True"
x:DataType="vm:RangeSliderDemoViewModel"
mc:Ignorable="d">
<UserControl.Styles>
<Style Selector="u|NumericDoubleUpDown">
<Setter Property="Width" Value="300" />
</Style>
</UserControl.Styles>
<StackPanel>
<u:RangeSlider
IsSnapToTick="True"
TickFrequency="5"
TickPlacement="TopLeft"
Minimum="{Binding #range.Minimum, Mode=TwoWay}"
Maximum="{Binding #range.Maximum, Mode=TwoWay}"
LowerValue="{Binding #range.LowerValue, Mode=TwoWay}"
UpperValue="{Binding #range.UpperValue, Mode=TwoWay}"/>
<u:NumericDoubleUpDown InnerLeftContent="Minimum" Value="{Binding #range.Minimum, Mode=TwoWay}" />
<u:NumericDoubleUpDown InnerLeftContent="Maximum" Value="{Binding #range.Maximum, Mode=TwoWay}" />
<u:NumericDoubleUpDown InnerLeftContent="LowerValue" Value="{Binding #range.LowerValue, Mode=TwoWay}" />
<u:NumericDoubleUpDown InnerLeftContent="UpperValue" Value="{Binding #range.UpperValue, Mode=TwoWay}" />
<ComboBox ItemsSource="{Binding Orientations}" SelectedItem="{Binding Orientation}" />
<u:RangeSlider
Name="range"
Margin="8"
HorizontalAlignment="Left"
VerticalAlignment="Top"
Orientation="{Binding Orientation}"
TickFrequency="5">
<u:RangeSlider.Styles>
<Style Selector="u|RangeSlider:horizontal">
<Setter Property="Width" Value="400" />
<Setter Property="Height" Value="40" />
</Style>
<Style Selector="u|RangeSlider:vertical">
<Setter Property="Width" Value="40" />
<Setter Property="Height" Value="400" />
</Style>
</u:RangeSlider.Styles>
</u:RangeSlider>
</StackPanel>
</UserControl>

View File

@@ -0,0 +1,15 @@
using Avalonia;
using Avalonia.Controls;
using Avalonia.Markup.Xaml;
using Ursa.Demo.ViewModels;
namespace Ursa.Demo.Pages;
public partial class RangeSliderDemo : UserControl
{
public RangeSliderDemo()
{
InitializeComponent();
this.DataContext = new RangeSliderDemoViewModel();
}
}

View File

@@ -0,0 +1,18 @@
<UserControl 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"
xmlns:u="https://irihi.tech/ursa"
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
x:Class="Ursa.Demo.Pages.TwoTonePathIconDemo">
<StackPanel>
<TextBlock Text="Size"></TextBlock>
<Slider Name="width" Minimum="0" Maximum="100" Value="20" Width="300"></Slider>
<ToggleSwitch Name="active" Content="Active"></ToggleSwitch>
<u:TwoTonePathIcon
IsActive="{Binding ElementName=active, Path=IsChecked}"
Width="{Binding #width.Value}"
Height="{Binding #width.Value}"
Data="M12 3L2 12H5V20H19V12H22L12 3M13 18H11V16H13V18M13 14H11V8H13V14Z"/>
</StackPanel>
</UserControl>

View File

@@ -0,0 +1,13 @@
using Avalonia;
using Avalonia.Controls;
using Avalonia.Markup.Xaml;
namespace Ursa.Demo.Pages;
public partial class TwoTonePathIconDemo : UserControl
{
public TwoTonePathIconDemo()
{
InitializeComponent();
}
}