跳過到頁腳內容
.NET幫助

Mudblazor .NET 8(對於開發者的運行原理)

This tutorial introduces MudBlazor and IronPDF in the context of .NET 8 for building web applications. MudBlazor 是一個用於 Blazor 專案的組件庫。 它提供了一系列的 UI 組件,支援建立客戶端和伺服器端的 Blazor 應用程式。 IronPDF 是一個函式庫,能夠在 .NET 應用程式中創建、操作和讀取 PDF 文件。

我們將介紹如何安裝 MudBlazor,將其組件用於網頁開發,以及整合 IronPDF 來使用 PDF 功能。 本指南針對 Blazor 和 .NET 初學者,但對於尋求學習 MudBlazor 和 IronPDF 的中級開發人員也很有用。

完成本教程後,您將會學會如何設定一個新的 Blazor 伺服器應用程式,整合 MudBlazor 組件,並使用 IronPDF 處理 PDF 文件。 重點在於利用 Visual Studio 建立現代網頁應用程式的實用知識。 讓我們先從設置環境並在 .NET 8 中創建一個新專案開始。

開始使用 MudBlazor

在 .NET 專案中設置 MudBlazor

要在您的客戶端或伺服器端專案中使用 MudBlazor,首先需確保已安裝 .NET Framework。 然後,在客戶端佈局文件夾或伺服器佈局中創建一個新的 Blazor 專案,具體取決於您的託管模式。 可以使用命令行或 Visual Studio 進行此操作。 在 Visual Studio 中,選擇 Blazor 應用程式模板。

接下來,將 MudBlazor 新增到您的專案中。 打開終端或軟體包管理器控制台,運行命令:

Install-Package MudBlazor

此命令將 MudBlazor 添加到您的專案中。

安裝 MudBlazor 後,前往 _Imports.razor。 新增以下內容:

@using MudBlazor

這使得 MudBlazor 的組件可以在您的專案中使用。

wwwroot/index.html(或伺服器專案的Host.cshtml中),新增 MudBlazor 的 CSS 和 JS 至同一文件,確保支援互動渲染模式,並保持默認模板設置。 包含以下行:

<link href="_content/MudBlazor/MudBlazor.min.css" rel="stylesheet" />
<link href="_content/MudBlazor/MudBlazor.min.css" rel="stylesheet" />
HTML

還要添加:

<script src="_content/MudBlazor/MudBlazor.min.js"></script>
<script src="_content/MudBlazor/MudBlazor.min.js"></script>
HTML

此步驟確保 MudBlazor 的樣式和功能在您的應用程式中能夠正常工作。

基本代碼示例:建立一個簡單的 MudBlazor 按鈕

為了演示 MudBlazor 的實際運用,我們來為組件添加一個簡單的按鈕。 打開一個 Razor 組件文件,像是 Index.razor。 添加以下 MudBlazor 按鈕代碼:

<MudButton Variant="Variant.Filled" Color="Color.Primary" OnClick="@ButtonClick">
    Click Me
</MudButton>
@code {
    private void ButtonClick()
    {
        Console.WriteLine("Button clicked!");
    }
}

此代碼創建了一個標有「Click Me」的按鈕。 當被點擊時,它會在控制台記錄一條訊息,展示服務端渲染。 VariantColor 屬性會自定義按鈕的外觀。

MudBlazor 的功能

MudBlazor 中的對話框

MudBlazor 的對話框組件簡化了對話框的創建和管理。 首先,在組件中注入IDialogService

@inject IDialogService DialogService

然後,使用以下方法開啟一個對話框:

private void OpenDialog()
{
    DialogService.Show<MyDialog>("My Dialog", new DialogParameters { ["Parameter1"] = "Value1" });
}

MyDialog 是一個表示對話框內容的 Razor 組件。 可以使用DialogParameters傳遞參數。

數據網格

MudBlazor 提供數據網格組件用於顯示集合。 支持排序、頁面分割和篩選功能。 使用時,將集合綁定到Items屬性:

<MudTable Items="@myItems">
    <HeaderContent>
        <MudTh>Header 1</MudTh>
        <MudTh>Header 2</MudTh>
    </HeaderContent>
    <RowTemplate>
        <MudTd DataLabel="Header 1">@context.Item1</MudTd>
        <MudTd DataLabel="Header 2">@context.Item2</MudTd>
    </RowTemplate>
</MudTable>
@code {
    private List<MyItemType> myItems = /* Fetch or define your items here */;
}

MudBlazor .NET 8 (開發人員工作原理):圖示 1

輸入表單

MudBlazor 為表單輸入提供了各種組件。 這裡是一個使用MudTextField的示例:

<MudForm Model="@myModel">
    <MudTextField Label="Enter text" For="@(() => myModel.Text)"></MudTextField>
</MudForm>
@code {
    public class MyModel
    {
        public string Text { get; set; }
    }
    private MyModel myModel = new MyModel();
}

標籤頁

使用MudTabs組織內容。 用MudTabPanel定義每個標籤:

<MudTabs>
    <MudTabPanel Text="Tab 1">
        Content for Tab 1
    </MudTabPanel>
    <MudTabPanel Text="Tab 2">
        Content for Tab 2
    </MudTabPanel>
</MudTabs>

MudBlazor .NET 8 (開發人員工作原理):圖示 2

圖標

MudBlazor 可與 Material Icons 集成。 要使用圖標,添加一個MudIcon組件:

<MudIcon Icon="@Icons.Material.Filled.Alarm" />

此代碼顯示警報圖標。 圖標通過提供視覺提示增強用戶界面。

IronPDF 和 MudBlazor 的整合

IronPDF 是一個 C# 的函式庫,簡化了在 .NET 應用程式中創建、編輯和讀取 PDF 文件的過程。 它脫穎而出的是設置極少,其將HTML 轉換為 PDF上也非常直觀。 這在您需要動態生成報告或發票時尤其方便。

IronPDF 的最佳功能是其能夠將HTML 轉換為 PDF,保留原始佈局和樣式。 其非常適合從網絡內容生成報告、發票和文檔。 HTML 文件、URL 和 HTML 字符串均支持轉換為 PDF。

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();

        // Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");

        // Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");

        // Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url);
        pdfFromUrl.SaveAs("URLToPDF.pdf");
    }
}
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();

        // Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");

        // Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");

        // Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url);
        pdfFromUrl.SaveAs("URLToPDF.pdf");
    }
}
Imports IronPdf

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		Dim renderer = New ChromePdfRenderer()

		' Convert HTML String to PDF
		Dim htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>"
		Dim pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent)
		pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf")

		' Convert HTML File to PDF
		Dim htmlFilePath = "path_to_your_html_file.html" ' Specify the path to your HTML file
		Dim pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath)
		pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf")

		' Convert URL to PDF
		Dim url = "http://ironpdf.com" ' Specify the URL
		Dim pdfFromUrl = renderer.RenderUrlAsPdf(url)
		pdfFromUrl.SaveAs("URLToPDF.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

將 IronPDF 與 C# MudBlazor 結合的使用案例

MudBlazor 是一個用於 Blazor 的組件庫,擁有大量有用的小部件和工具,用於構建響應式和互動式用戶界面。 當您將 MudBlazor 的 UI 能力與 IronPDF 的 PDF 生成功能相結合時,您將獲得一個強大的工具組。 一個常見的用例可能是允許用戶使用 MudBlazor 組件設計文檔或報報的網頁應用程式,然後通過點擊按鈕使用 IronPDF 將這些設計轉換為可下載的 PDF。

使用案例代碼示例

讓我們來看看一個基礎示例,在這裡我們用 MudBlazor 構建 UI,然後使用 IronPDF 將此 UI 轉換為 PDF 文件。

首先,確保在專案中安裝了 MudBlazor 和 IronPDF。 您可以通過 NuGet 包管理器或包管理器控制台進行此操作:

Install-Package MudBlazor
Install-Package IronPdf
Install-Package MudBlazor
Install-Package IronPdf
SHELL

步驟 1:用 MudBlazor 建立 UI

在 Blazor 頁面上,添加 MudBlazor 組件以創建 UI。 這裡是一個用 MudBlazor 創建的簡單表單:

@page "/report"
<MudText Typo="Typo.h5">Generate PDF Report</MudText>
<MudPaper Class="p-4">
    <MudTextField Label="Enter Report Title" @bind-Value="@reportTitle" />
    <!-- Add more components as needed -->
    <MudButton Variant="Variant.Filled" Color="Color.Primary" OnClick="@GeneratePDF">Generate PDF</MudButton>
</MudPaper>
@code {
    private string reportTitle = "";
}

步驟 2:使用 IronPDF 實現 PDF 生成

現在,要整合 PDF 生成功能,我們將處理GeneratePDF方法。 這個函數將我們的 HTML 內容轉換為 PDF 文件:

private void GeneratePDF()
{
    var renderer = new ChromePdfRenderer();
    var PDF = renderer.RenderHtmlAsPdf($"<h1>{reportTitle}</h1><p>More content here...</p>");
    PDF.SaveAs("Report.pdf");
}
private void GeneratePDF()
{
    var renderer = new ChromePdfRenderer();
    var PDF = renderer.RenderHtmlAsPdf($"<h1>{reportTitle}</h1><p>More content here...</p>");
    PDF.SaveAs("Report.pdf");
}
Private Sub GeneratePDF()
	Dim renderer = New ChromePdfRenderer()
	Dim PDF = renderer.RenderHtmlAsPdf($"<h1>{reportTitle}</h1><p>More content here...</p>")
	PDF.SaveAs("Report.pdf")
End Sub
$vbLabelText   $csharpLabel

此簡化示例中,RenderHtmlAsPdf將 HTML 內容字串轉換為 PDF。 在完整的應用程式中,您可能根據用戶輸入或其他數據源動態生成此 HTML 字串。

MudBlazor .NET 8 (開發人員工作原理):圖示 3

以下是程式碼的輸出:

MudBlazor .NET 8 (開發人員工作原理):圖示 4

結論

MudBlazor .NET 8 (開發人員工作原理):圖示 5

本指南帶您使用 MudBlazor 和 IronPDF 與 .NET 8 進行網頁開發。 MudBlazor 為 Blazor 應用程式提供 UI 組件,通過最小的代碼讓用戶界面得到增強。 IronPDF 允許創建和操作 PDF,對于 .NET 應用程式中的文檔管理至關重要。

透過逐步說明,您將學會將 MudBlazor 整合到專案中,使用其組件,並利用 IronPDF 從網絡內容生成 PDF。 本教程不僅適合初學者也適合中級開發人員,確保您能夠使用這些庫建立現代網頁應用程式的充足準備。 對於有興趣進一步探索 IronPDF 的人士,免費試用由 $799 起。

常見問題解答

MudBlazor 在 Blazor 專案中用來做什麼?

MudBlazor 是一個元件庫,使用於 Blazor 專案中,以提供各種 UI 元件,簡化互動和現代網頁應用程序的開發。

如何在 .NET 8 專案中安裝 MudBlazor?

要在 .NET 8 專案中安裝 MudBlazor,請在包管理器控制台中或透過 Visual Studio 的終端使用命令 Install-Package MudBlazor

IronPDF 為 .NET 應用程序提供哪些功能?

IronPDF 提供創建、操作和讀取 .NET 應用程序中的 PDF 文檔的功能,輕鬆地將 HTML 內容轉換成 PDF,同時保留版面和樣式。

如何在我的 Blazor 應用程序中設置 MudBlazor 元件?

要設置 MudBlazor 元件,請在 _Imports.razor 檔案中添加 @using MudBlazor,並在 'wwwroot/index.html' 或伺服器專案的 'Host.cshtml' 中包含必要的 MudBlazor CSS 和 JS 文件。

你能提供一個 MudBlazor 元件的簡單範例嗎?

一個簡單的 MudBlazor 元件範例是在 <MudButton Variant="Variant.Filled" Color="Color.Primary" OnClick="@ButtonClick">Click Me</MudButton> 中創建一個按鈕,並在點擊時觸發事件。

MudBlazor 用於 UI 開發的主要功能是什麼?

MudBlazor 提供如對話框、資料網格、輸入表單、標籤和圖標等主要功能,提升 Blazor 應用程序的 UI 設計和功能。

如何在項目中集成 IronPDF 與 MudBlazor?

IronPDF 可以與 MudBlazor 集成,將 UI 設計轉換為 PDF,允許開發者創建應用,使得用戶可以設計界面並生成可下載的 PDF 文檔。

MudBlazor 和 IronPDF 共同使用的一個實用情景是什麼?

一個實用場景是開發一個應用程序,使用者使用 MudBlazor 元件創建報表,然後用 IronPDF 轉換成 PDF 格式,以便輕鬆共享和打印。

.NET 應用程序中如何將 HTML 內容轉換為 PDF?

在 .NET 應用程序中,可以使用 IronPDF 的 ChromePdfRenderer 將 HTML 內容轉換為 PDF。範例代碼:var renderer = new ChromePdfRenderer(); var pdf = renderer.RenderHtmlAsPdf(htmlContent); pdf.SaveAs("output.pdf");

誰會從這個 MudBlazor 和 IronPDF 教程中受益?

這個教程對於 Blazor 和 .NET 的初學者,以及希望提高使用 MudBlazor 和 IronPDF 來構建現代網頁應用程序技能的中級開發人員非常有幫助。

Curtis Chau
技術作家

Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。

除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。