每一个 C# UI 框架都遵循着相似的模式:以 Windows 为核心,Linux 支持缺席,产品路线图前景不明。WPF 已陷入停滞,MAUI 跳过了 Linux,WinUI 3 则始终局限于 Windows 原生环境。与此同时,嵌入式 Linux 的需求持续增长,C# 开发团队在 Linux 上始终缺乏优质的 UI 替代方案。Qt Bridges for C# 是一款面向 C# 的桥接技术,目前处于公测阶段,开发者无需放弃现有 C# 代码库,即可充分利用 Qt Quick 功能丰富的 UI 库与 API、硬件加速以及跨平台能力。
什么是 Qt Bridge for C#?
Qt Bridges 是一项前瞻性桥接技术,旨在使单一前端实现可与多种后端编程语言配合使用。对于 C# 而言,它实际上提供了一种全新的跨平台替代方案,可取代现有 C# UI 框架。目前,C# 桥接功能已作为公测版本发布。
C# 桥接将 C# 应用逻辑层直接连接至 Qt Quick——Qt 久经验证的 UI 框架(全球汽车仪表盘和医疗设备中广泛使用的正是这套框架)——无需放弃现有代码库、.NET 集成或团队已熟悉的开发方式。硬件加速、对 Linux 上 C# 的原生支持,以及通过 HWND 嵌入实现的渐进式 WPF 迁移路径,均已包含在内。您的开发工作流保持不变,改变的是您所能交付的产品边界。
Qt Bridge 作为 C# UI 框架的工作原理
在使用 C# 和 QML 编写应用程序时,该桥接会为 C# 类型提供基于 Qt 的原生封装层。这些封装层将处理所有互操作任务,如对象实例化、方法调用、事件通知等。有了这些封装,便可以在 QML 中引用 C# 类型,如下例所示:

在当前可用的 Qt Bridges C# UI 框架版本中,原生封装层以 C++ 代码形式生成,因此需要 C++ 编译器/工具链(使用 Visual Studio 时,必须安装「使用 C++ 的桌面开发」工具包)。我们目前正在开发运行时配置的互操作模型,以在构建阶段消除对 C++ 工具链的依赖。
C# Bridge 入门指南
Qt Bridges for C# 目前作为 C# UI 框架,支持 Windows 和 Linux 平台。
Windows / Visual Studio 上的 C#
在 Windows 上使用 C# 桥接最便捷的方式,是安装 Visual Studio 扩展,并基于内置项目模板创建 C# + QML 应用程序。
安装 Qt Bridge for C# Visual Studio 扩展:
-
打开 Visual Studio 扩展管理器:
-
搜索 Qt Bridge for C# 扩展,然后选择安装。

创建 C# + QML 应用程序项目
-
选择新建项目选项:
-
在搜索模板框中输入 QML,等待搜索结果显示。
-
选择 QML Application 项目模板。
-
点击「下一步」。
-
在「配置新项目」窗口中,设置项目名称,然后点击「下一步」。
-
(可选)勾选「向项目添加示例代码」复选框,创建包含 C# 和 QML 示例代码的项目。
-
点击「创建」。
Visual Studio 生成项目后,可打开源文件查看添加至项目的代码,然后按 F5 键构建并运行应用程序。
Linux 上的 C#
若要在 Linux 上使用 Qt Bridge for C#,请安装模板包,然后基于 C# + QML 应用程序模板创建新项目。使用 C# 桥接需要先安装 Qt for Linux。
配置 Qt Bridge for C#
安装模板包:
配置 Qt for Linux 安装路径,例如:
创建 C# + QML 应用程序项目
构建并运行应用程序
后续计划
欢迎体验,并在 Qt Bridge for C# 文档中深入了解,同时欢迎提供您的反馈。
我们目前正朝着发布经过完善的 C# 桥接技术预览版(Technology Preview,TP)的目标继续前进。
此外,也欢迎分享您在现有前端框架中遭遇 Linux C# 支持缺失的亲身体验——我们的判断是,一旦开发范围超出 Windows 生态系统,便几乎找不到一款能够满足需求的 C# UI 框架。随着嵌入式 Linux 需求持续增长,我们很想知道:各种变通方案拼凑在一起,是否真的如我们所预想的那般痛苦?
您的反馈对于将这一技术打造为 C# 最佳 UI 方案至关重要,期待您的声音。欢迎通过 Qt Bridges 论坛参与讨论,并注册订阅以获取项目最新动态。