.NET 帮助

Webview2 C# 示例(它对开发人员的工作原理)

发布 2024年一月4日
分享:

WebView2微软的最新网页视图技术 Chromium 是基于 Chromium 引擎的,与流行的微软 Edge 浏览器使用的是同一引擎。 固定版本的发布允许 C# 开发人员将超文本标记语言、CSS 和 JavaScript 等网络技术直接嵌入到他们的本地应用程序中。 从显示动态内容到构建复杂的用户界面,这种集成带来了无限可能。

IronPDF 概述该工具提供了在 C# 应用程序中生成、处理和渲染 PDF 文档的功能。 无论是将在线内容转换为 PDF,还是从头开始创建文档,IronPDF 都能提供一种直接的方法,在处理基于网络的数据和界面的同时处理 PDF。

本教程将指导您在 C# 应用程序中集成 WebView2 和 IronPDF。从基本设置到高级功能,我们将探讨如何串联使用这些工具来增强应用程序的功能。

WebView2 简介

WebView2 由基于 Chromium 的 Microsoft Edge 浏览器提供支持,是在 C# 应用程序中嵌入网页内容方面的一大进步。 该技术使开发人员能够将现代网络的所有功能纳入其 Windows 应用程序,从而提高性能、兼容性和功能性。

Chromium Edge 的优势

基于 Chromium:WebView2 采用与 Microsoft Edge 相同的引擎,与旧版 Web 视图控件相比,WebView2 可提供更一致、更可靠的网页内容呈现。

现代网络标准:通过对最新网络标准的支持,开发人员可以确保其 Windows 应用程序中的网络内容与当前网络技术保持同步。

WebView2 入门

在 C# 项目中设置 WebView2

将 WebView2 集成到 C# 项目中是一个简单明了的过程。 这涉及到通过 NuGet(微软的 .NET 软件包管理器)添加 WebView2 SDK。 本 SDK 提供了必要的库和工具,以便使用 WebView2 将网页内容嵌入到应用程序中。

Webview2 C# 示例(如何为开发人员工作):图 1 - WebView2

在 Windows 窗体和 WPF 中实现 WebView2

WebView2 可用于不同类型的 C# 应用程序,包括 Windows Forms(WinForms)和 Windows Presentation Foundation(WPF). 每个框架在实现方面都有其细微差别,但核心理念是相同的:WebView2 在您的应用程序中充当网络内容的容器。

加载网页内容的基本示例

设置好 WebView2 后,您就可以开始将网页加载到应用程序中了。 这可以像设置源 URL 以显示网页一样简单。 下面是一个基本示例,供您参考:

var webView = new WebView2();
webView.Source = new Uri("https://www.ironpdf.com");
var webView = new WebView2();
webView.Source = new Uri("https://www.ironpdf.com");
Dim webView = New WebView2()
webView.Source = New Uri("https://www.ironpdf.com")
VB   C#

在此代码片段中,创建了一个新的 WebView2 实例,并将 IronPDF 的网站加载到其中。 这说明了如何使用 WebView2 在 C# 应用程序中渲染网页。

Webview2 C# 示例(面向开发人员的工作原理):图 2 - IronPDF

嵌入基本网络内容

在 WebView2 中显示 HTML、CSS 和 JS

WebView2 使 C# 应用程序能够嵌入和显示标准 Web 内容。 这包括 HTML 页面、用于样式设计的层叠样式表和用于交互的 JavaScript。 该控件的功能类似于嵌入在应用程序中的网络浏览器,可呈现 Microsoft Edge 中显示的网络内容。

在 WebView2 中加载网页

WebView2 的主要功能是加载和显示网页。 这可以通过指定 URL 或直接加载 HTML 内容来实现。 例如

webView.CoreWebView2.Navigate("https://www.ironpdf.com");
webView.CoreWebView2.Navigate("https://www.ironpdf.com");
webView.CoreWebView2.Navigate("https://www.ironpdf.com")
VB   C#

这段代码将 WebView2 控件导航到指定的网页,并在应用程序中显示。

与 JavaScript 交互

WebView2 允许在嵌入式网页内容中与 JavaScript 进行交互。 这意味着您可以从 C# 应用程序中执行 JavaScript 代码,反之亦然,从而实现动态内容更新和响应式用户界面。

定制网络体验

有了 WebView2,您就可以控制网页内容的显示方式,并可以自定义各个方面,如大小、可见性和用户交互设置。 这种定制可以将网页内容无缝集成到应用程序的本地用户界面中。

集成 WebView2 和 IronPDF

同时使用 WebView2 和 IronPDF

WebView2 和 IronPdf 在 C# 项目中的结合带来了令人兴奋的可能性。 WebView2 在显示网页内容并与之交互方面表现出色,而 IronPDF 则擅长将这些内容转换为 PDF 格式。 这种集成使开发人员能够创建不仅能显示网络内容,还能提供以下功能的应用程序将网页内容转换为 PDF 文档.

使用 IronPDF 捕捉 WebView2 内容

创建一个包含 WebView2 的 Windows 窗体应用程序可以让用户在应用程序中浏览互联网。首先在表单中添加一个 WebView2 控件。 该控件应占满表格的很大一部分,为网页浏览提供充足的空间。 此外,还要包括地址栏和按钮等导航控件,以提供完整的浏览体验。

添加 PDF 转换功能

在表单上引入一个标有 "转换为 PDF "的按钮。该按钮将触发用户使用 IronPdf 将当前浏览的网页转换为 PDF 文档。

安装 IronPDF 库

使用 NuGet 包管理器安装

要使用 NuGet 包管理器将 IronPDF 集成到 WebView2 项目中,请按照以下步骤操作:

  1. 打开 Visual Studio,在解决方案资源管理器中右键单击您的项目。

  2. 从上下文菜单中选择 "管理 NuGet 软件包..."。

  3. 转到浏览选项卡,搜索 IronPDF。

  4. 从搜索结果中选择 IronPdf 库,然后点击安装按钮。

  5. 接受任何许可协议提示。

    如果您想通过软件包管理器控制台在项目中包含 IronPdf,那么请在软件包管理器控制台中执行以下命令:

Install-Package IronPdf

它会获取 IronPDF 并将其安装到你的项目中。

使用 NuGet 网站安装

有关 IronPDF 的详细概述,包括其功能、兼容性和其他下载选项,请访问 NuGet 网站上的 IronPDF 页面 https://www.nuget.org/packages/IronPdf

通过 DLL 安装

另外,您也可以使用 IronPdf 的 DLL 文件将其直接集成到您的项目中。从以下链接下载包含 DLL 文件的 ZIP 文件DLL 下载页面. 解压缩,并将 DLL 包含到您的项目中。

实现转换逻辑

当用户点击 "转换为 PDF "按钮时,您的应用程序应捕获 WebView2 控件中显示的 URL 或 HTML 内容。 利用 IronPDF 的功能将此网页内容转换为 PDF。 下面是一个方法示例:

  1. 捕捉当前内容:当用户启动转换时,从 WebView2 控件中获取当前内容。 这可以是 URL,也可以直接是 HTML 内容。

  2. 使用 IronPDF 生成 PDF:使用 IronPDF 从捕获的网页内容中创建 PDF。 HtmlToPdf` 类可将当前网页渲染为 PDF 文档。

  3. 保存和通知:将生成的 PDF 保存到预定义位置或提示用户选择保存位置。 保存 PDF 后,通知用户转换成功,可以通过消息框通知。
private void ConvertToPdfButton_Click(object sender, EventArgs e)
{
    var renderer = new IronPdf.ChromePdfRenderer();
    var pdf = renderer.RenderUrlAsPdf(webView.CoreWebView2.Source.ToString());
    pdf.SaveAs("ConvertedWebPage.pdf");
    MessageBox.Show("PDF conversion successful!");
}
private void ConvertToPdfButton_Click(object sender, EventArgs e)
{
    var renderer = new IronPdf.ChromePdfRenderer();
    var pdf = renderer.RenderUrlAsPdf(webView.CoreWebView2.Source.ToString());
    pdf.SaveAs("ConvertedWebPage.pdf");
    MessageBox.Show("PDF conversion successful!");
}
Private Sub ConvertToPdfButton_Click(ByVal sender As Object, ByVal e As EventArgs)
	Dim renderer = New IronPdf.ChromePdfRenderer()
	Dim pdf = renderer.RenderUrlAsPdf(webView.CoreWebView2.Source.ToString())
	pdf.SaveAs("ConvertedWebPage.pdf")
	MessageBox.Show("PDF conversion successful!")
End Sub
VB   C#

以下是用户界面输出:

Webview2 C# 示例(如何为开发人员工作):图 3 - 网页到 PDF 的转换

单击 "转换 "按钮后,将把网页转换为 PDF,并显示以下消息框:

Webview2 C# 示例(开发人员如何使用):图 4 - 转换确认

结论

Webview2 C# 示例(开发人员如何使用):图 5 - 许可证

在我们结束对 WebView2 和 IronPDF 在 C# 开发领域的探索时,我们清楚地看到,这两种技术的协同作用为创建动态和多功能应用程序提供了丰富的功能。

通过集成 WebView2,您可以将先进的网络技术直接嵌入 C# 应用程序,增强其功能和用户体验。 IronPDF 提供的工具可将这些基于网络的界面和内容转换为可访问的 PDF 文档,是报告、文档和数据共享的理想选择,从而对此进行了补充。

使用 IronPDF 体验 IronPDF 的全部潜力免费试用 IronPDF您还可以使用 $749 开始的许可证解锁全部功能。

< 前一页
C# 字符串分割(对开发人员如何工作)
下一步 >
Fluent Assertions C#(它对开发者的工作方式)

准备开始了吗? 版本: 2024.12 刚刚发布

免费NuGet下载 总下载量: 11,781,565 查看许可证 >