一个Wpf的开发框架
引言
本框架使用Prism做MVVM,优点咱就不说了,主要了容器注入,消息和DI,比自己写省很多事。网上有很多标准的MVVM的使用方法,但是没有形成一个系统级的框架。本框架从登录到具体业务的使用,还有自动升级都搭建完成,没有大神写的那么好,只是起个抛砖引玉的作用。
后端使用ASP.net core,采用的是Colder.Admin.AntdVue的框架,强烈推荐大家去看,我在其基础上增加了一些功能,网页浏览地址http://121.36.12.76:5001/,接口浏览地址http://121.36.12.76:5000/,本文不做介绍,大家去看原作者的吧,截几张扩展功能的图片放在此处。
1.quarz任务执行
2.Websocket站内聊天
- 站内信
- 流程管理
好了,回归我们的正题,CS端的介绍。
简介
直接上目录结构讲解吧
.
- AIStudio.Core核心的公用部分放在此处。
- AIStudio.Resource 主题,图片,样式,字体库,中英文资源。
- AIStudio.Wpf.Business 业务逻辑层
- AIStudio.Wpf.Client 启动程序,登录和自动升级放在此处。
- AIStudio.Wpf.LocalConfiguration 本地配置文件管理
- AIStudio.Wpf.PetaPoco 同步数据库表结构,并扩展一些DTO的类。
- AIStudio.Wpf.Service 与后台交互的API与WEBSocket逻辑。
- AIStudio.Wpf.HomePage 主界面,菜单,工具栏等都在此处。
- AIStudio.Wpf.DemoPage Wpf控件展示,供快速开发。
- 其它Page都是业务层了,可以使用代码生成器生成。
- AIStudio.Wpf.AControls,控件dll,使用MahApps.Metro.NET45的扁平风格,并集成了Xceed.Wpf.ToolKit,HandyControl,MaterialDesignInXamlToolkit等其它优秀框架的控件,并且修改成MahApps.Metro.NET45的统一主题。(此处不在本框架介绍,因为都是集成别人的东西)
具体的东西,大家看源码去吧,源码地址https://gitee.com/akwkevin/AClient。
系统功能截图
自动升级
登录
主界面
主题切换
系统设置面板
Swagger接口文档
代码生成
用户管理
任务管理
站内聊天
站内信
流程管理
流程创建
剩下的大家自己去看吧,源码地址https://gitee.com/akwkevin/AClient,客户端安装包下载地址http://121.36.12.76:5000/setup。
如果大家喜欢的话,请点赞。
个人QQ:80267720
QQ技术交流群:51286643
一个Wpf的开发框架的更多相关文章
- 推荐一个IT老鸟肝了2月有余的免费开源WPF企业级开发框架
一个新学WPF的IT老鸟,肝了2个月做了这么一个WPF企业级开发框架,站长clone学习,觉得甚是不错.这是一个使用了Prism搭建的插件式框架,封装了DataGrid的使用,使整个框架子模块简单易学 ...
- CSLA .NET是一个.NET软件开发框架
CSLA .NET是一个.NET软件开发框架,帮助开发者“为Windows.Web.面向服务和工作流等应用构建强大和可维护的业务逻辑层”. CSLA是Component-based, Scalable ...
- WPF管理系统开发框架搭建指南,2020从入门到放弃
WPF技术是一个很不错的技术,但一直没有上手过正式的项目,趁在做这个医疗项目时,遂搭建一个WPF开发框架,目的是为了统一WPF开发并提高开发效率:我对WPF技术算是零基础,现学现卖,用这些不成体系的文 ...
- 搭建QQ聊天通信的程序:(1)基于 networkcomms.net 创建一个WPF聊天客户端服务器应用程序 (1)
搭建QQ聊天通信的程序:(1)基于 networkcomms.net 创建一个WPF聊天客户端服务器应用程序 原文地址(英文):http://www.networkcomms.net/creating ...
- 一个WPF控件 诡异的MouseEvent 。
背景: private System.Windows.Controls.Border _borderTouch; private bool _mouseDown = false; private S ...
- WPF入门教程系列(一) 创建你的第一个WPF项目
WPF入门教程系列(一) 创建你的第一个WPF项目 WPF基础知识 快速学习绝不是从零学起的,良好的基础是快速入手的关键,下面先为大家摞列以下自己总结的学习WPF的几点基础知识: 1) C#基础语法知 ...
- BuguMongo是一个MongoDB Java开发框架,集成了DAO、Query、Lucene、GridFS等功能
http://code.google.com/p/bugumongo/ 简介 BuguMongo是一个MongoDB Java开发框架,它的主要功能包括: 基于注解的对象-文档映射(Object-Do ...
- 意外地解决了一个WPF布局问题
原文:意外地解决了一个WPF布局问题 今天做了一个小测试,意外地将之前的一个困扰解决了,原问题见<WPF疑难杂症会诊>中的“怎么才能禁止内容撑大容器?” 以前我是在外侧嵌套Canvas容器 ...
- 我的第一个python web开发框架(14)——后台管理系统登录功能
接下来正式进入网站的功能开发.要完成后台管理系统登录功能,通过查看登录页面,我们可以了解到,我们需要编写验证码图片获取接口和登录处理接口,然后在登录页面的HTML上编写AJAX. 在进行接口开发之前, ...
随机推荐
- STM32中断
STM32的中断分两个类型:内核异常和外部中断. 内核异常不能够被打断,不能被设置优先级(它的优先级是凌驾于外部中断之上的).常见的内核异常有以下几种:复位(reset),不可屏蔽中断(NMI),硬错 ...
- FrameworkElementFactory中的SetBinding与SetValue
public static Microsoft.Windows.Controls.DataGridColumn CreateDateColumn(string path, string header) ...
- MySQL备份和恢复[1]-概述
备份类型 完全备份,部分备份 完全备份:整个数据集 部分备份:只备份数据子集,如部分库或表 完全备份.增量备份.差异备份 增量备份:仅备份最近一次完全备份或增量备份(如果存在增量)以来变化的数据,备份 ...
- 实战一:建立springcloud基础项目结构
一,,创建父工程,用于管理项目依赖版本 1,new -> project -> maven 2,修改pom.xml,这里管理了springboot,springcloud,springcl ...
- Java学习的第五十一天
1.例9.3 析构函数 public class Cjava { public static void main(String[]args) { Student s1=new Student(1001 ...
- vue项目优化与上线
一.项目优化策略 1.生成打包报告 2.第三方库启用CDN 3.Element-ui组件按需加载 4.首页内容定制 5.路由懒加载 1.生成打包报告 1.1通过vue-cli的UI面板直接查看 1.2 ...
- VC中句柄、指针、ID之间的转换
win32直接操作的是句柄HANDLE,每个句柄就对应windows窗口,而vc对HANDLE进行类封装,间接操作的都是HANDLE,现在句柄只是类的一个成员变量. 从句柄到指针 CWnd* pWnd ...
- numpy基础读写
一.npy,npz 格式的读写 1.写入 a.Savez("存储地址",数组1,数组2,-,数组n) --npz,将多个数组保存到文件 b.Save("存储地址" ...
- .netcore简单集成swagger
为什么要集成Swagger 在前后端分离比较普遍的当下,当后端开发完接口后,还需把接口的信息.参数说明.返回参数等信息编写好提供给调用者.对于对外开放接口需提供说明文档是必不可少的.但是对于内部开发, ...
- 云计算之路-出海记-小目标:Hello World from .NET 5.0 on AWS
品尝过船上的免费晚餐,眺望着 aws 上搭建博客园海外站的宏伟目标,琢磨着眼前可以实现的小目标,不由自主地在屏幕上敲出了 -- "Hello World!",就从这个最简单朴实的小 ...