控件类别

如果你想要创建自己的控件,Avalonia有三个主要的控件类别。在创建自定义控件之前,你需要根据使用场景选择一个最合适的控件类别。

User Control

UserControl 是最简单的创建自定义控件的方法。这种类型的控件最适合创建特定于程序的“Views”或者“Pages” 。UserControl和创建Window的方法一样,创建一个新的UserControl,并向其添加控件即可。

Templated Controls

TemplatedControl是最常使用的、能在多个程序之间共享的通用控件。它们在初始状态下没有外观,这意味着它们可以为不同的主题和应用程序重新设计外观。Avalonia定义的大多数标准控件都属于这一类。

在 WPF/UWP 中你需要从 Control 类型继承来创建一个新的控件,但是在 Avalonia 中你需要从TemplatedControl继承。

如果你想在一个单独的文件中为你创建的TemplatedControl提供一个Style,别忘记在你的应用程序中使用 StyleInclude 导入这个文件。

Basic Control

Control是用户界面的基础 - 它们通过重写Visual.Render方法来使用几何图形绘制自己。像TextBlockImage这样的控件就属于这一类。

在 WPF/UWP 中你需要从 FrameworkElement 类型继承来创建一个新的控件,但是在 Avalonia 你需要从Control继承。

最后更新于