创建一个UserControl

<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"
             mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
             x:Class="AvaloniaUI.Page1">
    <TextBlock Margin="3" TextWrapping="Wrap">
        Visit the website
        <Hyperlink NavigateUri="http://www.prosetech.com" OpenInNewWindow="False">www.prosetech.com</Hyperlink>.
    </TextBlock>
</UserControl>

对应cs代码

using Avalonia;
using Avalonia.Controls;
using Avalonia.Markup.Xaml;

namespace AvaloniaUI;

public partial class Page1 : UserControl
{
    public Page1()
    {
        InitializeComponent();
    }
}

WindowPageHost.axaml代码

<Window 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"
        Height="300" Width="392"
        x:Class="AvaloniaUI.WindowPageHost"
        Title="WindowPageHost">
    <TextBlock Margin="3" TextWrapping="Wrap">
        This is a simple page.<LineBreak />
        Click <Hyperlink Text="here" NavigateUri="Page1.axaml" OpenInNewWindow="False"/>
        to go to Page1.
    </TextBlock>
</Window>

WindowPageHost.axaml.cs代码

using Avalonia;
using Avalonia.Controls;
using Avalonia.Markup.Xaml;

namespace AvaloniaUI;

public partial class WindowPageHost : Window
{
    public WindowPageHost()
    {
        InitializeComponent();
    }
}

运行效果

image

 

posted on 2026-04-04 04:00  dalgleish  阅读(0)  评论(0)    收藏  举报