开源项目 英雄联盟 之WPF

WPF 英雄联盟

作者:Devncore 组织 来自 韩国,首尔

原文链接:https://github.com/devncore/leagueoflegends

  • 感谢分享者晨晞gg[1]

  • 框架使用.NET6

  • C# 10.0;

  • Visual Studio 2022;

d6fc5d3f8fa87dca84b22cdd11b2c6c8.png
  • 您可以了解如何正确实施 WPF 项目。

  • 描述了如何在不依赖商业组件的情况下,直接实现英雄联盟等顶级设计领域的表达。

  • 您可以通过自己实现 MVVM 模式来详细学习和理解 WPF

  • 更多效果可以通过GitHub[2]下载代码,使用Visual Studio 2022打开解决方案Leagueoflegends.slnLeagueoflegends项目设为启动项;

1c1f7f29a9f0745460802599cc68bf5a.png

预览原文

WPF League of Legends

WPF 기반으로 만든 리그오브레전드입니다.

aa421fdc461d8b664947ca5729e8a57e.png

컨텐츠

  • 이 오픈소스의 특징[3]

  • 개발 정보[4]

  • 프로젝트 구조[5]

  • 데이터베이스[6]

  • 스크린샷[7]

이 오픈소스의 특징

  • WPF 프로젝트를 올바르게 구현하는 방법을 학습할 수 있습니다.

  • 리그오브레전드와 같은 최상위 디자인 영역의 표현을 상용 컴포넌트에 의지하지 않고 직접 구현하는 방법에 대해 설명합니다.

  • MVVM 패턴을 직접 구현하여 WPF에 대해 자세하게 이해하고 학습할 수 있습니다.

개발 정보

  • .NET 6.0

  • C# 10.0

  • Visual Studio 2022[8]

Nuget Package (1.0.9)

  • DevNcore.WPF[9]

  • DevNcore.UI.Foundation[10]

  • DevNcore.UI.Design[11]

  • DevNcore.UI.Design.Converter[12]

  • DevNcore.UI.Design.Geometry[13]

  • DevNcore.LayoutSupport.Leagueoflegends[14]

프로젝트 구조

  • 📁 AppData

  • 📁 Based

  • 📁 Implement

  • 📁 Material

  • 📁 Presentation

  • Leagueoflegends

데이터베이스

WPF League of Legends는 클래식 RDB 대신 YAML을 데이터베이스로 사용하고 있습니다.

YAML은 JSON과 함께 널리 사용되는 데이터 양식입니다.
이 기술에 대한 내용은 Guide to Yaml[15] 에서 더 자세히 학습할 수 있습니다.

스크린샷

Home

32b9b1cadb9afbfb3f0584d2397d5dda.png

TFT

534c052f29e644ec1588ea1e9e2eed5d.png

Clash

77c650ca6fdc8df69947d676f99cad7f.png56904dc25950b7d32f90f1265132d67b.png

Setting

5edc4db7c50bc65e6e626fc3e1fc1da2.png

Profile

b49ba6146e76298a571d4af9ed49736c.png

Collection

76e399845d5b34704a1dd602a22b0908.png525339fcd8f1f6d201c26ad340942949.png17ab392ce33d995f03b1ca3b4c28607b.png58ba2225bd8b6e553df6eb545b38936c.png

Loot

9d8445482256fffd051accfa0021abd7.png

My Shop

787c1cf51dacdc47908a1909af8fa3d5.png

Store

136fd2d46b92142468124f5b599c030c.pngdc9ae97ce87b7c83d071f11f8443234d.png4f6fccba57deeb705c531f096e8860d0.png

Game

48ed666aee18ff61f686a693bb84049f.png504d386686076162c445526ba6ce13ea.png

参考资料

[1]

晨晞gg: https://www.cnblogs.com/chenxigg/

[2]

GitHub: https://github.com/devncore/leagueoflegends

[3]

이 오픈소스의 특징: #이-오픈소스의-특징

[4]

개발 정보: #개발-정보

[5]

프로젝트 구조: #프로젝트-구조

[6]

데이터베이스: #데이터베이스

[7]

스크린샷: #스크린샷

[8]

Visual Studio 2022: https://visualstudio.microsoft.com/ko/vs/preview/vs2022/

[9]

DevNcore.WPF: https://github.com/devncore/devncore

[10]

DevNcore.UI.Foundation: https://github.com/devncore/devncore

[11]

DevNcore.UI.Design: https://github.com/devncore/devncore

[12]

DevNcore.UI.Design.Converter: https://github.com/devncore/devncore

[13]

DevNcore.UI.Design.Geometry: https://github.com/devncore/devncore

[14]

DevNcore.LayoutSupport.Leagueoflegends: https://github.com/devncore/devncore

[15]

Guide to Yaml: https://github.com/devncore/guide-to-yaml

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/286320.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java中try 与catch的使用

(2011-10-08 17:08:43) 转载▼标签: 杂谈 分类: Javatry{//代码区}catch(Exception e){//异常处理}代码区如果有错误,就会返回所写异常的处理。 首先要清楚,如果没有try的话,出现异常会导致程序崩溃。而try则可以保证…

iVX 倒计时制作

需求:点击开始计时计时,并且开始计时按钮文本编程停止计时文本,点击记录事件可以记录当前时间并显示到下面的记录时间列中。 一、页面制作 首先创建一个相对应用项目,命名为计时器: 接着创建一个页面,设…

打造自己的装机U盘(二)

打造自己的装机U盘(二)二、 在PE U盘加入系统安装的GHOST镜像文件现在我们在上篇的PE U盘加入系统安装的GHOST镜像文件。这一步其实最简单,说白了就是搞一个GHOST文件复制、粘贴到u盘。系统安装的GHOST镜像文件从何而来?百度、谷歌输入“GHOS…

到底什么是国土空间规划?

文章目录 一、什么是国土空间规划?二、为什么要建立国土空间规划体系?三、国土空间规划的主要目标是什么?四、国土空间规划的编制要求是什么?五、国土空间规划体系由哪几部分组成?六、国土空间规划分哪几个层级?七、国土空间规划分哪几个类型?八、国土空间总体规划、详细…

Bootstrap入门(八)组件2:下拉菜单

Bootstrap入门&#xff08;八&#xff09;组件2&#xff1a;下拉菜单先引入本地的CSS文件和JS文件&#xff08;注&#xff1a;1.bootstrap是需要jQuery支持的。2.需要在<body>当中添加&#xff09;<link href"css/bootstrap.min.css" rel"stylesheet&q…

MAUI 迁移指南

前言为了能够让大家更好的理解全新的MAUI框架, 那么本次迁移指南主要给大家讲解从Xamarin.Forms升级到MAUI带来了哪些全新的变化, 下面将围绕以下几点给大家重点介绍。单个代码库演变启动配置演变统一资源管理依赖注入隐式using 指令Essentials合并全新命名空间您仅需要具备Xam…

ivx动效按钮 基础按钮制作 01

一、准备工作 首先创建一个相对定位应用&#xff1a; 接着创建一个页面&#xff1a; 随后我们切换一下屏幕&#xff0c;更改为 PC 端 web&#xff0c;因为手机移动端一般是没有鼠标悬浮事件的&#xff1a; 为了使按钮显示方便观察&#xff0c;我们设置水平和垂直对其为居中…

android中xml tools属性详解

第一部分 安卓开发中&#xff0c;在写布局代码的时候&#xff0c;ide可以看到布局的预览效果。但是有些效果则必须在运行之后才能看见&#xff0c;比如这种情况&#xff1a;TextView在xml中没有设置任何字符&#xff0c;而是在activity中设置了text。因此为了在ide中预览效果&a…

Android系统匿名共享内存Ashmem(Anonymous Shared Memory)在进程间共享的原理分析

在前面一篇文章Android系统匿名共享内存Ashmem&#xff08;Anonymous Shared Memory&#xff09;驱动程序源代码分析中&#xff0c;我们系统地介绍了Android系统匿名共享内存的实现原理&#xff0c;其中着重介绍了它是如何辅助内存管理系统来有效地管理内存的&#xff0c;在再前…

转帖-Linux学习(Find命令使用实例)

为什么80%的码农都做不了架构师&#xff1f;>>> find / -name httpd.conf find / -name access_log 2>/dev/null find /etc -name *srm* find / -amin -10 # 查找在系统中最后10分钟访问的文件 find / -atime -2 # 查找在系统中最后48小时访问的文件 find / -mm…

Landsat中国西北地区行列号Shapefile图层对照(附行列号Shapefile下载)

GISer们,在下载Landsat卫星影像数据时,你还在为研究区的影响行列号犯愁吗?你还在苦苦对照图片吗?你Out了!重磅来了,本文提供了中国西北地区的Shapefile格式的矢量图层,和你的研究区叠在一起,是不是可以很快找出你想要的行列号呢? 《中国区域Modis行列号,Landsat条带…

MAUI 入门教程系列(1.框架简介)

前言在2020年5月, 微软宣布了MAUI跨平台框架, MAUI 是Xamarin.Forms演变而来, 这也就意味着, 如果你原来具备Xamarin.Forms开发经验, 你可以流畅的过渡到MAUI开发当中。原本于2021年底发布的MAUI正式版被推迟到了2022年5月底发布。现在, 你目前可以通过安装VS2022 预览版进行安…

ivx动效按钮 基础按钮制作 02

本节示例&#xff1a; 一、特效块的制作 在上一节中制作了一个可以增加动效的自定义按钮后&#xff0c;这一节通过这个行按钮对其进行特效制作。 在行按钮中的绝对定位中&#xff0c;我们创建一个行&#xff0c;命名为移入&#xff0c;接下来我们做一个移入动效&#xff1a…

最新Modis影像数据下载完整流程---以MOD13Q1 NDVI数据下载为例(2020年12月2日更新)

本文详细讲解Modis数据的下载流程,以MOD13Q1影像为例,该数据为16天合成的空间分辨率为250m的NDVI产品,原始数据的投影为正弦曲线投影。 Modis数据MRT和ArcGIS处理方法集锦: 1.《ArcGIS10.8完美实现MODIS NDVI数据格式转换和投影变换》 2.《重磅!ArcGIS10.8 Python代码批量…

解决夜神模拟器无法联机调试 adb server version (**) doesn't match this client (**); killing...

前言 最新下了个最新版的夜神模拟器&#xff0c;然后adb devices发现连不上模拟器了&#xff0c;报adb server version (**) doesnt match this client (##); killing... 从报错信息看是adb版本不匹配导致的&#xff0c;接下来讲如何解决这个问题 环境&#xff1a; 夜神模拟器…

WCF分布式开发常见错误(25):The certificate 'CN=WCFHTTPS' must have a private key

在准备WCF安全开发实践编程系列文章的时候&#xff0c;制作证书出现这个问题。The certificate CNWCFHTTPS must have a private key that is capable of key exchange. The process must have access rights for the private key.证书必须有一个可以交换密钥的私钥&#xff0c…

【前端就业课 第二阶段】CSS 零基础到实战(02)列表

整个前端学习路线 以下路线为 CSDN C认提供&#xff1a; 如果想 快点搞完 并且 就业 可以选择C认证&#xff0c;C认证还可以 内推、招聘会 &#xff0c;所以如果在校生想要稳一点&#xff0c;就可以选择C认证或者超级实习生计划&#xff0c;贼稳&#xff01; 链接在这PC端&…

C#网络编程(订立协议和发送文件) - Part.4

转载自&#xff1a;http://www.tracefact.net/CSharp-Programming/Network-Programming-Part4.aspx 文件传输 前面两篇文章所使用的范例都是传输字符串&#xff0c;有的时候我们可能会想在服务端和客户端之间传递文件。比如&#xff0c;考虑这样一种情况&#xff0c;假如客户端…

Android Studio怎么设置悬浮提示文字框显示函数

[摘要]AndroidStudio函数悬浮提示文字框设置方法一&#xff1a;AndroidStudio在默认情况下是不会和Eclipse那样&#xff0c;鼠标移动到一个类或... Android Studio函数悬浮提示文字框设置方法一&#xff1a; Android Studio在默认情况下是不会和Eclipse那样&#xff0c;鼠标移…

消息队列入门(三)JMS标准及实现

消息中间件 消息中间件即Message-oriented middleware(MOM)&#xff0c;消息中间件利用高效可靠的消息传递机制进行平台无关的数据交流&#xff0c;并基于数据通信来进行分布式系统的集成。 通过提供消息传递和消息排队模型&#xff0c;消息中间件可以在分布式环境下扩展进程间…