首页 > 其他分享 >【Avalonia】Avalonia的学习笔记以及与WPF的不同点

【Avalonia】Avalonia的学习笔记以及与WPF的不同点

时间:2023-12-13 23:11:07浏览次数:24  
标签:样式 笔记 WPF 不同点 DataTemplate Avalonia

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: &quot;{0}&quot;'}" />
                <!--  We use a UserControl here to display the data  -->
                <view:PersonView />
            </StackPanel>
        </DataTemplate>

    </Window.DataTemplates>

 4.

标签:样式,笔记,WPF,不同点,DataTemplate,Avalonia
From: https://www.cnblogs.com/mqxs/p/17900160.html

相关文章

  • [转][C#][WPF]原生使用 ICommand
    传参这里参考:https://www.cnblogs.com/zhlziliaoku/p/5867556.html界面上添加一个按钮 <ButtonContent="点击"Width="120"Height="31"Command="{BindingshowCommand}"CommandParameter="{BindingRelativeSource={RelativeSourcese......
  • WPF限制字符串的最长显示长度,超出后尾部显示...
    在WPF中,如果你想要限制一个字符串的显示长度,并在超出后用省略号(...)表示,你可以使用TextBlock控件和设置它的TextTrimming属性。这种方法可以自动截断文本并在末尾添加省略号。<TextBlockText="{BindingYourString}"TextTrimming="CharacterEllipsis"Max......
  • WPF 解决PasswordBox 属性Password无法绑定到后台的问题
    在WPF中,你可以使用密码框的Password属性来绑定到后台,但是由于安全性考虑,WPF的密码框不直接支持双向绑定。然而,你仍然可以通过其他方式实现将密码框的内容绑定到后台。一种常见的方法是创建一个附加属性(AttachedProperty)来实现密码框的双向绑定。以下是一个简单的示例代码:c......
  • [转][C#][WPF]MVVM 下的 ComboBox 数据绑定效果
    参考:https://www.cnblogs.com/xpvincent/p/3848790.html参考:https://blog.csdn.net/zhudaokuan/article/details/109059333前端:<ComboBoxName="cmbBox"ItemsSource="{Bindinglist}"DisplayMemberPath="Code"SelectedValu......
  • 界面控件DevExpress WPF导航组件,助力升级应用程序用户体验!(下)
    DevExpressWPF的SideNavigation(侧边导航)、TreeView、导航面板组件能帮助开发者在WPF项目中添加Windows样式的资源管理器栏或OutlookNavBar(导航栏),DevExpressWPFNavBar和Accordion控件包含了许多开发人员友好的功能,专门设计用于帮助用户构建极佳的应用功能。在上文中(点击这里回......
  • WPF 制作三个点从左到右过渡隐藏显示
     Code:<Windowx:Class="WpfApp1.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.micros......
  • 一个适用于定制个性化界面的WPF UI组件库
    前言今天给大家推荐一个能让你用最少的代码来实现期望的UI效果,适用于定制个性化界面的WPFUI组件库:Panuon.WPF.UI。组件库官方介绍Panuon.WPF.UI是一个适用于定制个性化UI界面的组件库。它能帮助你快速完成样式和控件的UI设计,而不必深入了解WPF的ControlTemplate、Storyboa......
  • wpf data binding
     publicpartialclassWindow2:Window{publicPersonvmPerosn=newPerson();publicWindow2(){InitializeComponent();vmPerosn.Name="JackZhao";vmPerosn.Phone=&qu......
  • 浅谈WPF之控件拖拽与拖动
    使用过office的visio软件画图的小伙伴都知道,画图软件分为两部分,左侧图形库,存放各种图标,右侧是一个画布,将左侧图形库的图标控件拖拽到右侧画布,就会生成一个新的控件,并且可以自由拖动。那如何在WPF程序中,实现类似的功能呢?今天就以一个简单的小例子,简述如何在WPF中实现控件的拖拽和拖......
  • WPF 绑定binding都有哪些事件
    在WPF中,源属性(SourceProperty)指的是提供数据的属性,通常是数据模型或者其他控件的属性,而目标属性(TargetProperty)则是数据绑定的目标,通常是绑定到控件的属性,例如TextBlock的Text属性。数据绑定将源属性的值自动更新到目标属性中。 主要包含以下几个事件:1. UpdateSourceTrigg......