IRONSOFTWAREHOME
開發者更新

Avalonia C#(對於開發者的運行原理)

Jacob Mellor,首席技術官 @ Team Iron
Jacob Mellor
Updated: 2026年4月21日

Avalonia C# 是一個跨平台使用者介面框架,提供開發者一個統一的項目和控制模板,用於建立可以在多個平台上順暢運行的應用程式。 它允許開發者建立可以在Windows、Linux、macOS等平台上運行的應用程式。 這使得它成為那些希望開發出能夠觸及廣大觀眾的應用程式的重要工具。

使用Avalonia,建立跨平台桌面應用程式變得更簡單。 該框架支持多種平台。 這個相容性功能通過擴展現有WPF應用程式的可達性來增強它們,而無需進行昂貴且風險高的重寫。

IronPDF Features 是一個程式庫,讓開發者在 .NET 應用程式中生成PDF。 當與Avalonia整合時,它能啟用將視圖或資料導出為PDF的應用程式。 這為您的跨平台應用程式增加了寶貴的功能。

通過將Avalonia與IronPDF結合,開發者擁有了一套強大的工具。 這些工具允許開發複雜的應用程式。 這些應用程式可以擁有豐富的使用者介面以及生成PDF文件的能力。

開始使用Avalonia C#

設置您的開發環境

要開始使用Avalonia進行開發,您需要設置開發環境。 您可以使用Visual Studio或JetBrains Rider作為您的IDE。首先,安裝Visual Studio或JetBrains Rider。 然後,將Avalonia Visual Studio Extension新增到您的IDE。這個擴展提供項目模板和XAML預覽器。 它提升了您的開發體驗。

對於那些從跨平台WPF項目轉換而來的人,Avalonia C#提供熟悉的開發過程,並提供由.NET Foundation支持的外部連結和資源的存取。

您的第一個Avalonia應用程式

建立您的第一個Avalonia應用程式是簡單的。 打開您的IDE並選擇Avalonia項目模板。 這會建立一個帶有預設Avalonia設置的新項目。該項目包括一個主窗口和一個基本配置。 運行該項目以查看您的第一個Avalonia應用程式的運作。 您現在已經開始了與Avalonia C#的旅程。

Avalonia C# (對於開發者運作方式): 圖1

探索Avalonia UI功能

理解Avalonia UI和XAML

Avalonia UI使用XAML作為其使用者介面設計。 XAML是一種標記語言,用於定義UI元素。 這是一個在Avalonia應用程式中的簡單XAML範例:

<Window xmlns="https://github.com/avaloniaui"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="Avalonia Example">
    <TextBlock Text="Hello, Avalonia!" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Window>
XML

此程式碼在中間建立一個帶有文字塊的窗口。 文字塊顯示"Hello, Avalonia!"。 XAML使設計和調整您的UI變得簡單。

樣式和控制模板

Avalonia以提供靈活的樣式系統而著稱,支持大量設計需求。 該系統允許您定義應用程式的外觀和感覺。 您可以自定義控制模板來實現一致的設計。 以下是如何為按鈕定義一個簡單樣式的方法:

<Window.Styles>
    <Style Selector="Button">
        <Setter Property="Background" Value="#007ACC"/>
        <Setter Property="Foreground" Value="White"/>
    </Style>
</Window.Styles>
XML

此樣式更改窗口中所有按鈕的背景和文字顏色。 Avalonia的樣式系統支持複雜場景,包括主題和動畫。

處理資料和控制

Avalonia中的資料綁定使您的UI可以連接到您的資料源。 這是一個資料綁定的基本範例:

<TextBox Text="{Binding UserName}"/>
XML

此程式碼將TextBox的Text屬性綁定到資料上下文中的UserName屬性。 Avalonia支持多種用途的控制,如ListBox、DataGrid和TreeView。

將IronPDF與Avalonia UI整合

介紹IronPDF

Avalonia C# (對於開發者運作方式): 圖2

IronPDF Library Overview 是一個 .NET 程式庫,使處理PDF變得易如反掌。 它允許開發者以程式化方式建立、編輯和提取PDF內容。 IronPDF的一個突出功能是將HTML轉換為PDF with IronPDF的能力,這對於生成報告、發票或任何可以作為網頁呈現的文件非常有用。

Use Case: Merging IronPDF with Avalonia C#

想像一下,您正在構建一個需要生成作為PDF的發票的Avalonia桌面應用程式。 您的應用程式擁有一個美麗設計的HTML格式發票模板,並且您想動態填入細節並將其保存為PDF。 這就是IronPDF發揮作用的地方。 通過整合IronPDF,您可以填寫資料後渲染您的HTML發票模板並直接從您的Avalonia應用程式保存。

程式碼範例:生成PDF發票

以下是一個展示如何實現此功能的綜合範例。 我們將建立一個簡單的Avalonia窗口,帶有一個按鈕。 當被點擊時,該按鈕會從HTML字串(作為我們的發票模板)生成PDF並將其保存到您的電腦中。

首先,確保您已在項目中安裝IronPDF和Avalonia套件。 如果沒有,您可以通過NuGet新增它們。

現在,讓我們來編寫程式碼:

using Avalonia;
using Avalonia.Controls;
using Avalonia.Interactivity;
using Avalonia.Markup.Xaml;
using IronPdf;

public class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();

        // Attach development tools if in DEBUG mode
        // #if DEBUG
        this.AttachDevTools();
        // #endif

        // Assign event handler for the button click event
        this.FindControl<Button>("GeneratePdfButton").Click += OnGeneratePdfButtonClick;
    }

    private void InitializeComponent()
    {
        // Load the XAML layout into the current window
        AvaloniaXamlLoader.Load(this);
    }

    /// <summary>
    /// Event handler for when the "Generate PDF" button is clicked.
    /// Creates and saves a PDF file from an HTML string.
    /// </summary>
    private void OnGeneratePdfButtonClick(object sender, RoutedEventArgs e)
    {
        var Renderer = new ChromePdfRenderer();

        // Render an HTML string as a PDF document
        var PDF = Renderer.RenderHtmlAsPdf("<html><body><h1>Invoice</h1><p>This is a simple invoice.</p></body></html>");

        // Save the rendered PDF to the file system
        PDF.SaveAs("Invoice.pdf");

        // Display a message box to inform the user that the PDF is generated
        MessageBox.Show(this, "Invoice PDF generated successfully.", "Success");
    }
}

此程式碼定義了一個應用程式主窗口的MainWindow類。 MainWindow構造函式初始化窗口並為按鈕的Click事件設置事件處理器。 OnGeneratePdfButtonClick方法處理點擊事件,利用IronPDF的ChromePdfRenderer類將HTML渲染為PDF文件並保存。

結論

對於迫切希望在不犧牲UI質量或性能的情況下,將應用程式擴展到多平台的開發者來說,Avalonia提供了一個具有說服力的解決方案。 從參觀Avalonia的文件開始並加入社群,探索這個強大的UI框架如何提升您的C#開發項目。

如果您想將它與IronPDF合併,您可以嘗試IronPDF的免費試用選項。 IronPDF的價格從 $999 開始。

Jacob Mellor,首席技術官 @ Team Iron
首席技術官

Jacob Mellor是Iron Software的首席技術官,一位在C# PDF技術上開創先河的遠見工程師。作為Iron Software核心程式碼庫的原開發者,他從創立以來就一直在塑造公司的產品架構,與首席執行官Cameron Rimington一起將公司轉變為服務於NASA、特斯拉和全球政府公司的50多名人員的公司。

...
閱讀更多

相關文章

Key in blue circle

立即免費取得 30 天試用金鑰。

Your trial license will be sent to your email address

無任何限制。100% 解鎖。無需信用卡。

OR
bullet_checked無需信用卡或建立帳號無任何限制。100% 解鎖。無需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
預訂您的免費現場演示
Booking Badge

受到全球數百萬工程師的信任

Iron Software的客戶標誌
獲取您的無義務諮詢
填寫以下表格或電子郵件sales@ironsoftware.com
您的詳細資訊將始終保密。
受到全球數百萬工程師的信任
Iron Software的客戶標誌
立即獲取您的30天試用金鑰。
無需信用卡或帳戶建立
C# 用於PDF的NuGet程式庫
使用NuGet安裝

版本: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. 在解決方案資源管理器,右鍵點選參考,管理NuGet包
  2. 選擇瀏覽並搜尋"IronPdf"
  3. 選擇套件並安裝
C# PDF DLL
下載DLL

版本: 2026.9

或者點擊此處下載Windows安裝程式。

  1. 下載並解壓IronPDF到類似~/Libs的位置,位於您的解決方案目錄中
  2. 在Visual Studio解決方案資源管理器,右鍵點選參考。選擇瀏覽,"IronPdf.dll"

授權從$999起