以下均为初学入门写的一些学习记录,不保证理解都对啊。。。
1.axaml中引用命名空间
xmlns:model="using:IDataTemplateSample.Models"
2.Grid支持行列的简化写法
<Grid RowDefinitions="Auto, Auto, *" ColumnDefinitions="Auto, *"/>
3.DataTemplate 根据DataType自动选择对应类型的样式,使用Window.DataTemplates加载多个DataTemplate自动选择显示不同样式,类似WPF的DataTemplateSelector选择器
<Window.DataTemplates>
<!-- Add a DataTemplate for a Student -->
<!-- Mind the order of the Templates. Begin with the most specific first. -->
<DataTemplate DataType="model:Student">
<StackPanel>
<TextBlock FontWeight="Bold" Text="{Binding Grade, StringFormat='I am a student in {0}. grade'}" />
<!-- We re-use the PersonTemplate here by using DynamicResource -->
<ContentControl Content="{Binding}" ContentTemplate="{DynamicResource My.DataTemplates.Person}" />
</StackPanel>
</DataTemplate>
<!-- Add a DataTemplate for a Teacher -->
<DataTemplate DataType="model:Teacher">
<StackPanel>
<TextBlock FontWeight="Bold" Text="{Binding Subject, StringFormat='I am a teacher for: "{0}"'}" />
<!-- We use a UserControl here to display the data -->
<view:PersonView />
</StackPanel>
</DataTemplate>
</Window.DataTemplates>
4.前面说使用Window.DataTemplates类似WPF的选择器,实则Avalonia也有选择器
先创建一个选择器,选择器的Key和Datatemplate组成ShapesTemplateSelector的数据,根据DataType的类型然后通过选择器的Build创建出对应的数据模版。

本文介绍了Avalonia中的XML命名空间引用、Grid的简化语法、DataTemplate的自适应样式选择、Avalonia和WPF选择器的区别,以及如何使用Styles、主题和触发器。还讨论了处理控件事件和数据绑定的问题。
最低0.47元/天 解锁文章
2807

被折叠的 条评论
为什么被折叠?



