开源项目更新|WPF/Uno Platform/WinUI 3三个版本的《英雄联盟客户端》
哈喽大家好!
我们是中韩Microsoft MVP夫妇 Vicky&James^^很高兴能加入博客园和大家分享我们的技术!
自2008年以来,我们一直深耕于WPF技术,积累了丰富的经验。这些年来,随着Xamarin、MAUI、Uno-Platform、AvaloniaUI和OpenSilver等跨平台技术的不断发展,我们也将在WPF中积累的技能成功地拓展到了各种跨平台项目中。
多年前我们发布的《用WPF重现英雄联盟客户端》项目获得了大家不少支持和关注,非常感谢大家!
最近,基于这个WPF版本,我们又开发出了跨平台的UnoPlattform和WinUI 3两个版本。这两个新版本继承了WPF的XAML丰富用户体验、C#的面向对象设计以及系统化的项目结构,同时也给我们带来了新的挑战和成长。
与此同时,我们也对原有的WPF版本源码进行了全面更新。因此大家可以通过我们的源码非常清晰地比较 WPF / Uno Platform / WinUI 3这三者在项目构建和呈现上的异同。








为了统一WPF/WinUI3/Uno仓库的项目架构,我们基于.NET Standard 2.0设计了一个可在所有平台上运行的框架,无需依赖第三方库。这个框架直接实现了项目分散化、模块化、视图注入、依赖注入、单例模式和MVVM等基于XAML的项目架构所需功能。采用这种方法,我们可以在不同版本(如WPF、Uno和WinUI3)之间转换时,大大减少不必要的转换工作。模项目。我们将复杂的控件实现为CustomControls,旨在为开发人员提供丰富的学习资料。
此外,项目还包含了WPF、Uno和WinUI3的各种技术实现案例,展示了如何在实际项目中充分利用这些技术和平台的强大功能。
项目中,从小型控件到复杂视图,所有组件均基于CustomControl构建。这种方法大大增强了项目的可移植性和灵活性,使得将整个项目迁移到其他基于XAML的平台变得更加便捷和高效。
为了帮助更多人了解和学习WPF以及相关的跨平台技术,我们已经将这三个项目开源。大家可以在我们的GitHub账号中查看和下载:
别忘了点击Star和Fork,也欢迎分享给身边的小伙伴!你们的支持是我们持续开源分享的动力!️
英雄联盟客户端 (WPF)
英雄联盟客户端 (Uno-Platform)
英雄联盟客户端 (WinUI 3)
更详细的项目介绍大家可以直接在GitHub项目中查看和学习,如有任何相关疑问,也欢迎通过Discussions参与讨论。
除了源码外,我们还在积极准备相关的系统教学视频,这些视频也将很快和大家见面^^
开源项目更新|WPF/Uno Platform/WinUI 3三个版本的《英雄联盟客户端》的更多相关文章
- .NET 5 尝鲜 - 开源项目TerminalMACS WPF管理端支持.NET 5
.NET 5 尝鲜 - 开源项目TerminalMACS WPF管理端支持.NET 5 一个使用 Prism 作为模块化框架.基于多个开源控件库作为UI控件选择.集成开源 UI 界面设计的 .NET ...
- Android开源项目分包方式学习(eoe、oschina、github)
总感觉Android中关于分包的文章很少,或者几乎可以说没有.但是合理地分包,又可以使整个项目模块化,减少包与包之间的依赖,让整个项目的框架更加清晰,更利于后续功能的拓展. 因为没有相关的文章,所以这 ...
- Android 上传开源项目到 jcenter 实战踩坑之路
本文微信公众号「AndroidTraveler」首发. 背景 其实 Android 上传开源项目到 jcenter 并不是一件新鲜事,网上也有很多文章. 包括我本人在将开源项目上传到 jcenter ...
- Android开发:为什么我们从来不去感谢开源项目维护者?
今天我想谈一谈,为什么我们很少去感谢开源项目维护者: 一.这样的项目我也可以做啊 “蛤?这项目对我来说也太简单了吧.” “我一周之内就能做一个更好的版本出来.” 确实,很多人都可以在 Hackatho ...
- 这些 .Net and Core 相关的开源项目,你都知道吗?(持续更新中...)
最近更新时间2017-12-28 序列化 Json.NET http://json.codeplex.com/Json.Net是一个读写Json效率比较高的.Net框架.Json.Net 使得在.Ne ...
- .NET Core/.NET5/.NET6 开源项目汇总11:WPF组件库1
系列目录 [已更新最新开发文章,点击查看详细] WPF(Windows Presentation Foundation)是微软推出的基于Windows 的用户界面框架,属于.NET Frame ...
- .NET Core/.NET5/.NET6 开源项目汇总12:WPF组件库2
系列目录 [已更新最新开发文章,点击查看详细] WPF(Windows Presentation Foundation)是微软推出的基于Windows 的用户界面框架,属于.NET Frame ...
- 能快速构建和定制网络拓扑图的WPF开源项目-NodeNetwork
大家好,我是沙漠尽头的狼,今天介绍一个WPF开源项目-NodeNetwork,它可以帮助我们快速构建和定制网络拓扑图. 一.前言 在现代软件开发中,数据可视化和可交互性越来越受到关注.为了实现这一点, ...
- 【原】Android热更新开源项目Tinker源码解析系列之三:so热更新
本系列将从以下三个方面对Tinker进行源码解析: Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Android热更新开源项目Tinker源码解析系列之二:资源文件热更新 A ...
- 【原】Android热更新开源项目Tinker源码解析系列之一:Dex热更新
[原]Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Tinker是微信的第一个开源项目,主要用于安卓应用bug的热修复和功能的迭代. Tinker github地址:http ...
随机推荐
- emojiCTF2024
emojiCTF2024 WEB http 题目: 思路: 修改 UA 头为 EMOJI_CTF_User_Agent_v1.0:User-Agent: EMOJI_CTF_User_Agent_ ...
- Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock error was 14: curl#6 - "Could not resolve host: mirrorlist.centos.org; 未知的错误"解决yum下载报错
报错信息 │ (SSH client, X server and network tools) │ │ │ │ ⮞ SSH session to root@192.168.117.166 │ │ • ...
- 【Java】Springboot 响应外切 实现数据脱敏
实现效果: 1.脱敏注解在模型类进行标记 package cn.cloud9.server.test.model; import cn.cloud9.server.struct.masking.ann ...
- 【Spring】06 Aop切面功能
什么是Aop? Aspect Oriented Programming 面向切面编程 通过预编译的方式和运行期动态代理实现程序功能统一维护的一种技术 是OOP的延续,也是Spring第二个核心内容 可 ...
- 【DataBase】SQL50 Training 50题训练
原文地址: https://blog.csdn.net/xiushuiguande/article/details/79476964 实验数据 CREATE DATABASE IF NOT EXIST ...
- Streamlit运行出现ModuleNotFoundError: No module named ‘altair.vegalite.v4‘ —— ModuleNotFoundError: No module named 'altair.vegalite.v4'
参考: https://blog.csdn.net/ikun_King/article/details/131852167 解决方法: pip install altair=4.2.2
- 有没有使用过MindSpore的,体验怎么样啊?
看到了一个帖子: https://www.zhihu.com/question/386352303/answer/3160948468 ================================ ...
- Pytorch使用ReduceLROnPlateau来更新学习率
如需了解完整代码请跳转到: https://www.emperinter.info/2020/08/05/change-leaning-rate-by-reducelronplateau-in-pyt ...
- kubernetes批量删除evicted状态pod
#!/bin/bash # get namespace namespaces=`kubectl get pod -A | grep -i "evicted" | awk '{pri ...
- docker高级篇:实战-自己开发的微服务怎么在docker上面运行?
通过前面的一系列学习,我们已经知道怎么制作dockerfile了.那么,本篇文章,咱们就把自己写的spring boot的demo项目,部署在docker上面. 案例目标: 我们自己开发的微服务怎么在 ...