如何用NanUI高效打造现代感的WinForm应用程序?
摘要:前言 今天大姚给大家分享一个强大的 .NET 开源框架,它利用 Web 技术(HTML5、CSS3、JavaScript)为 WinForm 应用程序构建现代化的用户界面:NanUI。 如果你正在寻找一个用于创建具有现代用户界面的 WinF
前言
今天大姚给大家分享一个强大的 .NET 开源框架,它利用 Web 技术(HTML5、CSS3、JavaScript)为 WinForm 应用程序构建现代化的用户界面:NanUI。
如果你正在寻找一个用于创建具有现代用户界面的 WinForm 应用程序的框架,NanUI 是一个不错的选择。
项目介绍
NanUI 是一个基于 .NET 平台的开源(MIT License)框架,旨在帮助开发者使用 HTML5、CSS3 和 JavaScript 构建具有现代感的 WinForm 应用程序用户界面。它底层依托于 Xilium.CefGlue 这是 Chromium Embedded Framework(CEF)在 .NET 环境下的官方绑定实现,通过嵌入完整的 Chromium 渲染引擎,使 WinForm 应用能够呈现 Web 技术驱动的富交互界面。
基本原理
官方介绍:
基本原理概括:
Chromium Embedded Framework (CEF)是一个开源项目,一个用于将基于 Chromium 的浏览器嵌入其他应用程序的简单框架。
它提供稳定的 C/C++ API,支持多进程架构(Browser 进程 + Renderer/GPU 等子进程),具备完整的 HTML5 渲染、JavaScript 执行、网络请求、安全沙箱等能力。
NanUI 并未直接调用 CEF 的 C 接口,而是基于Xilium.CefGlue这是一个高质量的 .NET 封装库,将 CEF 的 C++ API 转换为 C# 可调用的托管接口。
环境要求
开发环境
Visual Studio 2019 或更高版本。
NET Framework 4.6.2 或更高版本 / .NET 6.0 或更高版本。
部署环境
.NET Framework 4.6.2 或更高版本。
.NET 6.0 需要 Windows 7 Service Pack 1 或更高版本。
.NET 7.0/8.0/9.0 需要 Windows 10 或 Windows 11。
Microsoft Windows 7 Service Pack 1 或更高版本。
项目源代码
快速使用
创建一个 WinForm 应用程序
首先我们快速创建一个名为NanUIExerciseWindows 窗体应用程序:
安装 NanUI NuGet 包
安装NanUI包NetDimension.NanUI:
安装NanUI所依赖的Chromium Embedded Framework依赖包NetDimension.NanUI.Runtime:
创建一个基本的 NanUI 应用程序
Program.cs:
usingNetDimension.NanUI;
namespaceNanUIExercise
{
internalstaticclassProgram
{
///<summary>
///Themainentrypointfortheapplication.
///</summary>
[STAThread]
staticvoidMain()
{
varbuilder=NanUIApp.CreateBuilder();
builder.UseNanUIApp<MyFirstAPP>();
varapp=builder.Build();
app.Run();
}
}
}
创建一个类继承 AppStartup 来配置应用程序:
usingMicrosoft.Extensions.DependencyInjection;
usingNetDimension.NanUI;
namespaceNanUIExercise
{
publicclassMyFirstAPP:AppStartup
{
protectedoverrideMainWindowCreationAction?UseMainWindow(MainWindowOptionsopts)
{
//设置应用程序的主窗体
returnopts.UseMainFormium<MyWindow>();
}
protectedoverridevoidProgramMain(string[]args)
{
//Main函数中的代码应该在这里,该函数只在主进程中运行。这样可以防止子进程运行一些不正确的初始化代码。
