feat: add compile binding to theme.

This commit is contained in:
rabbitism
2024-07-22 16:17:50 +08:00
parent eb797a9440
commit 25d6a00be1
8 changed files with 22 additions and 14 deletions

View File

@@ -5,7 +5,9 @@
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<!--
<TrimmerRootDescriptor Include="Roots.xml"/> <TrimmerRootDescriptor Include="Roots.xml"/>
-->
<AvaloniaResource Include="Assets\**"/> <AvaloniaResource Include="Assets\**"/>
</ItemGroup> </ItemGroup>

View File

@@ -4,6 +4,8 @@
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:u="https://irihi.tech/ursa" xmlns:u="https://irihi.tech/ursa"
xmlns:vm="clr-namespace:Ursa.Demo.ViewModels" xmlns:vm="clr-namespace:Ursa.Demo.ViewModels"
x:CompileBindings="True"
x:DataType="vm:AvatarDemoViewModel"
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450" mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
x:Class="Ursa.Demo.Pages.AvatarDemo"> x:Class="Ursa.Demo.Pages.AvatarDemo">
<Design.DataContext> <Design.DataContext>

View File

@@ -6,6 +6,7 @@
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:pages="clr-namespace:Ursa.Demo.Pages" xmlns:pages="clr-namespace:Ursa.Demo.Pages"
xmlns:u="https://irihi.tech/ursa" xmlns:u="https://irihi.tech/ursa"
x:DataType="pages:BannerDemoViewModel"
mc:Ignorable="d"> mc:Ignorable="d">
<Design.DataContext> <Design.DataContext>
<pages:BannerDemoViewModel /> <pages:BannerDemoViewModel />

View File

@@ -7,6 +7,7 @@
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:u="https://irihi.tech/ursa" xmlns:u="https://irihi.tech/ursa"
xmlns:vm="using:Ursa.Demo.ViewModels" xmlns:vm="using:Ursa.Demo.ViewModels"
x:DataType="vm:IntroductionDemoViewModel"
d:DesignHeight="800" d:DesignHeight="800"
d:DesignWidth="1600" d:DesignWidth="1600"
mc:Ignorable="d"> mc:Ignorable="d">

View File

@@ -8,6 +8,7 @@
xmlns:viewModels="clr-namespace:Ursa.Demo.ViewModels" xmlns:viewModels="clr-namespace:Ursa.Demo.ViewModels"
d:DesignHeight="450" d:DesignHeight="450"
d:DesignWidth="800" d:DesignWidth="800"
x:DataType="viewModels:PaginationDemoViewModel"
mc:Ignorable="d"> mc:Ignorable="d">
<Design.DataContext> <Design.DataContext>
<viewModels:PaginationDemoViewModel /> <viewModels:PaginationDemoViewModel />

View File

@@ -9,7 +9,7 @@
xmlns:viewModels="clr-namespace:Ursa.Demo.ViewModels" xmlns:viewModels="clr-namespace:Ursa.Demo.ViewModels"
d:DesignHeight="450" d:DesignHeight="450"
d:DesignWidth="800" d:DesignWidth="800"
x:CompileBindings="True" x:CompileBindings="False"
x:DataType="viewModels:TimelineDemoViewModel" x:DataType="viewModels:TimelineDemoViewModel"
mc:Ignorable="d"> mc:Ignorable="d">
<UserControl.Resources> <UserControl.Resources>
@@ -27,33 +27,33 @@
<u:Timeline <u:Timeline
Mode="Alternate" Mode="Alternate"
HorizontalAlignment="Left" HorizontalAlignment="Left"
ContentMemberBinding="{ReflectionBinding Description}" ContentMemberBinding="{Binding Description}"
HeaderMemberBinding="{ReflectionBinding Header}" HeaderMemberBinding="{Binding Header}"
IconMemberBinding="{ReflectionBinding ItemType}" IconMemberBinding="{Binding ItemType}"
IconTemplate="{StaticResource IconSelector}" IconTemplate="{StaticResource IconSelector}"
ItemsSource="{Binding Items}" ItemsSource="{Binding Items}"
TimeMemberBinding="{ReflectionBinding Time}" > TimeMemberBinding="{Binding Time}" >
</u:Timeline> </u:Timeline>
<u:Timeline <u:Timeline
Mode="Left" Mode="Left"
HorizontalAlignment="Left" HorizontalAlignment="Left"
ContentMemberBinding="{ReflectionBinding Description}" ContentMemberBinding="{Binding Description}"
HeaderMemberBinding="{ReflectionBinding Header}" HeaderMemberBinding="{Binding Header}"
IconMemberBinding="{ReflectionBinding ItemType}" IconMemberBinding="{Binding ItemType}"
IconTemplate="{StaticResource IconSelector}" IconTemplate="{StaticResource IconSelector}"
ItemsSource="{Binding Items}" ItemsSource="{Binding Items}"
TimeMemberBinding="{ReflectionBinding Time}" > TimeMemberBinding="{Binding Time}" >
</u:Timeline> </u:Timeline>
<u:Timeline <u:Timeline
Mode="Right" Mode="Right"
HorizontalAlignment="Left" HorizontalAlignment="Left"
ContentMemberBinding="{ReflectionBinding Description}" ContentMemberBinding="{Binding Description}"
HeaderMemberBinding="{ReflectionBinding Header}" HeaderMemberBinding="{Binding Header}"
IconMemberBinding="{ReflectionBinding ItemType}" IconMemberBinding="{Binding ItemType}"
IconTemplate="{StaticResource IconSelector}" IconTemplate="{StaticResource IconSelector}"
ItemsSource="{Binding Items}" ItemsSource="{Binding Items}"
TimeMemberBinding="{ReflectionBinding Time}" > TimeMemberBinding="{Binding Time}" >
</u:Timeline> </u:Timeline>
<u:Timeline HorizontalAlignment="Left" Mode="Alternate"> <u:Timeline HorizontalAlignment="Left" Mode="Alternate">
<u:TimelineItem <u:TimelineItem

View File

@@ -3,7 +3,7 @@
<TargetFramework>net8.0</TargetFramework> <TargetFramework>net8.0</TargetFramework>
<Nullable>enable</Nullable> <Nullable>enable</Nullable>
<LangVersion>latest</LangVersion> <LangVersion>latest</LangVersion>
<AvaloniaUseCompiledBindingsByDefault>false</AvaloniaUseCompiledBindingsByDefault> <AvaloniaUseCompiledBindingsByDefault>true</AvaloniaUseCompiledBindingsByDefault>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>

View File

@@ -13,6 +13,7 @@
<PackageIcon>irihi.png</PackageIcon> <PackageIcon>irihi.png</PackageIcon>
<PackageLicenseExpression>MIT</PackageLicenseExpression> <PackageLicenseExpression>MIT</PackageLicenseExpression>
<PackageProjectUrl>https://github.com/irihitech/Ursa.Avalonia</PackageProjectUrl> <PackageProjectUrl>https://github.com/irihitech/Ursa.Avalonia</PackageProjectUrl>
<AvaloniaUseCompiledBindingsByDefault>true</AvaloniaUseCompiledBindingsByDefault>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>