探索创新:Windows社区工具包实验室(预览版)🚀
欢迎来到Windows社区工具包实验室——一个用于开发新组件的实验场,基于WinUI 2、WinUI 3和Uno平台构建!欲了解关于工具包实验室更多信息,请参阅我们的博客文章。文章详细介绍了创建这个空间的初衷以及如何设置必要的NuGet源以方便使用本仓库中的实验特性。
这里是所有新功能进入Windows社区工具包的起点,也是进行原型设计和合作完善特性的理想场所。这使得当特性准备好后,最终将其合并到主工具包仓库可以尽可能地顺利。
开始使用
立即在浏览器中尝试我们的示例应用程序!
您可以在我们的Azure DevOps Feed中找到相应的CommunityToolkit.Labs
包,了解更多关于预览包的信息:
如果您发现某个实验有用,请对对应的议题点赞👍并发表反馈。每个实验都有一个带有“experiment”标签的议题用于跟踪。其他任何问题或疑虑,都可开启讨论。
或者,您可以克隆仓库,打开components
目录,导航至特定实验的文件夹并打开其解决方案文件,在Visual Studio中运行其中一个项目头(ExperimentName.Uwp/Wasm/WinAppSDK)来查看其示例。
克隆仓库
工具库在子模块中,首次克隆或拉取时需使用--recurse-submodules
:
git clone --recurse-submodules https://github.com/CommunityToolkit/Labs-Windows.git
构建要求
- Visual Studio 2022(UWP 和桌面.NET工作负载)
- .NET 6 SDK
- Windows App SDK
- Windows SDK 19041
- 运行
dotnet tool restore
从项目根目录安装SlnGen - 在开发者命令提示符中运行构建脚本(如Visual Studio中)
添加新的实验
注:目前只接受预先试验列表之外的贡献者,确保我们的基础设施稳定。如果您想贡献力量,但不知从何入手,请在此处查看可用任务。如果有关于组件的想法,请在这里开启讨论
要启动新的实验,首先在一个新的讨论中提出您的想法与社区共享。确保遵循模板,并阐述为什么以及如何帮助其他开发人员。
一旦有进展并且您的想法被批准,将会创建一个议题追踪您的实验及其进度。
然后您可以fork该仓库,创建一个新的分支,开始编写您的特性(或将现有原型移植过来)。
dotnet new --install .\tooling\ProjectTemplate\
cd components
dotnet new ctk-component -n 我的实验名称
然后提交PR,不必一开始就完成所有工作,但应提供基本功能和使用示例。实验室是一个逐步改进的好地方,您可以在这里获取社区反馈并与他人协作。但是,您的初始PR应该能够编译并有足够的内容供其他人理解如何利用您的组件。
修改实验
首先,fork仓库并为您的修改创建一个新的分支。
要修改实验,导航到其子目录并打开其自身的解决方案文件。这样可以让您独立地处理该组件的功能、示例、文档和单元测试。
然后向仓库提交您的修改。实验的所有者可以与您一起集成变更。维护者会在获得实验所有者的批准后合并PR。
实验何时完成?
并非所有实验都能成功,而那也没关系,因为我们在实验!👨🔬🔬👩🔬
如果有足够的兴趣,那么实验就可以转移到主要的Windows社区工具包仓库中。这些实验应实现所有必需的组件,如示例、文档和单元测试。
在主要工具包仓库中使用“工具包实验室转移”议题模板打开一个议题。(待更新链接)使用该议题讨论新组件应在工具包中的何处放置,以及它将在哪个版本中发布。也将进行初步代码审查。议题获得批准后,打开一个PR将实验复制到其新家。
构建样例应用
首先确保满足构建要求,否则构建脚本会失败。
接下来,运行仓库根目录下的GenerateAllSolution.bat
脚本来生成所有解决方案。
然后只需在Visual Studio中打开CommunityToolkit.AllComponents.sln
解决方案,就可以运行适用于不同平台的示例应用,如CommunityToolkit.App.WinAppSdk
。
如果您想运行除UWP、Wasm或WinAppSDK之外的项目头部,先运行tooling/MultiTarget
目录中的UseTargetFrameworks.ps1
脚本。例如:.\UseTargetFrameworks.ps1 -targets all
如果希望在Uno + Windows App SDK上测试,而不是Uno + UWP,运行UseUnoWinUI.ps1
脚本。例如:.\UseUnoWinUI.ps1 -targets 3
如果您仅关注特定实验,可以导航到其目录并打开它的单独解决方案,查看特定功能的示例。您还可以通过以下部分了解如何获取本实验室中可用的每个功能的预建NuGet包。
行为准则
该项目已采用贡献者公约定义的行为准则,以明确我们社区期望的行为。 更多信息见.NET基金会行为准则。
.NET 基金会支持
该项目由.NET基金会支持。
致谢贡献者
借助了contrib.rocks制作。
Windows社区工具包实验室是一个独特的资源,为开发者提供了在安全环境中尝试新功能的机会,同时也鼓励社区参与和贡献。无论您是寻求创新的解决方案,还是想要展示自己的技能,这里都是理想之地。所以,加入我们,探索无限可能!
鸿蒙开发工具大赶集
本仓将收集和展示鸿蒙开发工具,欢迎大家踊跃投稿。通过pr附上您的工具介绍和使用指南,并加上工具对应的链接,通过的工具将会成功上架到我们社区。012hertz
Go 微服务 HTTP 框架,具有高易用性、高性能、高扩展性等特点。Go01每日精选项目
🔥🔥 每日精选已经升级为:【行业动态】,快去首页看看吧,后续都在【首页 - 行业动态】内更新,多条更新哦~🔥🔥 每日推荐行业内最新、增长最快的项目,快速了解行业最新热门项目动态~~029kitex
Go 微服务 RPC 框架,具有高性能、强可扩展的特点。Go00Cangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。Cangjie057毕方Talon工具
本工具是一个端到端的工具,用于项目的生成IR并自动进行缺陷检测。Python040PDFMathTranslate
PDF scientific paper translation with preserved formats - 基于 AI 完整保留排版的 PDF 文档全文双语翻译,支持 Google/DeepL/Ollama/OpenAI 等服务,提供 CLI/GUI/DockerPython06mybatis-plus
mybatis 增强工具包,简化 CRUD 操作。 文档 http://baomidou.com 低代码组件库 http://aizuda.comJava03国产编程语言蓝皮书
《国产编程语言蓝皮书》-编委会工作区018- DDeepSeek-R1探索新一代推理模型,DeepSeek-R1系列以大规模强化学习为基础,实现自主推理,表现卓越,推理行为强大且独特。开源共享,助力研究社区深入探索LLM推理能力,推动行业发展。【此简介由AI生成】Python00
热门内容推荐
最新内容推荐
项目优选









