uno

C#源码 2025-08-16

像素完美。多平台。 C#和Windows XAML。今天。

什么是uno平台?

uno平台是一个开源平台,用于快速构建单一代码库本机移动,Web,桌面和嵌入式应用程序。

它允许C#和Winui XAML和/或C#代码在所有目标平台上运行,同时允许您控制每个像素。它带有对开箱即用的Fluent,Material和Cupertino设计系统的支持。 uno平台实现了越来越多的WINUI API,例如Microsoft.ui.XAML来构建您的UI,并且WinRT可以使跨平台访问非UI API(传感器,文件系统,设备等),以启用Winui应用程序以在所有平台上运行所有具有本机性能的平台。

它使您能够利用熟悉的IDE,并通过我们的XAML/C#热装加载功能和热设计来提高生产力,以设计和运行iOS,Android,MacOS,Windows,Windows,Linux和WebAssembly上的应用程序。

请访问我们的文档以获取更多详细信息。

入门

请参阅《视觉工作室》,《 Visual Studio Code》或《喷气机骑士》的完整入门指南。

对于更大的示例并具有演示:

  • 访问uno Gallery存储库。
  • 在您的浏览器中现场直播WebAssembly uno Playground。

uno平台功能

  • 支持的平台:
    • Windows 10和Windows 11
    • Windows 7(通过Skia桌面)
    • MacOS(通过Skia桌面)
    • iOS和Android(通过.NET)
    • WebAssembly通过.NET运行时WebAssembly SDK
    • Linux(通过X11和Framebuffer的Skia桌面)
  • 开发循环:
    • 在您喜欢的OS(Windows,MacOS或Linux)上开发您喜欢的IDE(Visual Studio,Rider或VS代码)上的开发
    • XAML和/或C#热加载用于WebAssembly,MacOS,Linux,Windows,iOS和Android
    • uno .Uitest,一个为WebAssembly,iOS和Android创建跨平台UI测试的库。
  • 跨平台控件:
    • 控制模板
    • 数据模板
    • 造型
    • 丰富的动画
    • 组成API
  • Winui代码支持:
    • Windows社区工具包
    • Windows社区工具包( uno叉)
    • 社区工具包MVVM
    • 微软XAML行为
    • 棱镜
    • Skiasharp
    • Skiasharp.Extended
    • Reactiveui官员
    • WindowsStateTriggers
    • rx.net
    • 彩色代表
    • libvlcSharp
    • Mapsui
    • Livecharts
    • 任何Winui项目
  • 响应设计:
    • 视觉状态经理
    • 状态触发器
    • 自适应触发器
  • 平台特定:
    • 通过条件XAML的天然控制和性能
    • 任何现有的Xamarin IOS/Android库可用

实时WebAssembly应用程序

这是使用uno平台进行WebAssembly制作的实时应用程序列表。

  • uno平台游乐场(来源)。
  • uno画廊展示了使用流利和材料指南的使用。
  • Nuget Package Explorer(源)。
  • uno计算器,一种简单但功能强大的iOS/Android/webAssembly C#计算器的端口,该端口载有Windows(源)。还可以尝试iOS版本,Android版本和Linux版本。
  • 社区工具包实验室应用程序
  • SkiaSharp fork用于uno平台,Skia是基于Google的Skia Graphics库(源)的.NET平台的跨平台2D图形API。
  • uno .WindowsCommunityToolKit(源)。
  • uno .Roslynquoter,一种基于罗斯林的C#分析工具(来源)。
  • SQLite + Entity Framework Core应用程序,Roslyn,Entity Framework Core,SQLite和uno平台的组合演示,以操纵浏览器数据库。
  • WebAssembly AOT射线跟踪器。
  • 意外的API,一个有趣的UI和非UI API集合,您可以与uno平台一起探索和使用。

让我们知道您是否已公开使用您的应用程序,我们将在此处列出!

有问题吗?功能请求?问题?

确保访问我们的常见问题解答,创建问题,打开GitHub讨论或访问我们的Discord服务器 - 我们的工程团队和社区将能够为您提供帮助。

贡献

您可以通过多种方式为uno平台做出贡献,因为Winrt和Winui API非常大!阅读我们的贡献指南,以了解我们的开发过程以及如何提出错误修复和改进。快来访问我们的不和谐,以寻求如何贡献!

使用gitpod.io在浏览器中为uno做出贡献,请在此处遵循我们的指南。

贡献者

感谢这些出色的人(用cons.rocks制作的清单):

?谢谢。

下载源码

通过命令行克隆项目:

git clone https://github.com/unoplatform/uno.git