为了满足用户需求,对Newbeecoder.UI开源界面框架项目进行功能扩充,新增数据库轻量级ORM模块、数据访问模型(Model)模块、Excel操作模块、绘图功能。
-
ORM模块支持Sql Server,MySql,Sqlite等主流数据库。一对多或者多对多的映射关系,能快速连接和操作数据库表,支持多种组合查询和新增,修改数据表。
-
(Model)模块对数据表字段映射和封装,它提供了服务器端验证,当模型属性上使用这些特性时。可对字符非空,最大长度,值范围,两个属性相同,正则表达式字段验证。
-
Excel操作模块可以在没有安装Office的情况下对word,Excel文档进行读写操作。读写速度快、稳定性好,API简单易用、完美支持xls和xlsx格式。
-
绘图功能是项目中使用频率比较高的功能,所以在新版Newbeecoder.UI界面库中加入此功能。目前能支持折线和曲线图两种模式,同时绘制多个实时曲线图。能满足用户基本要求。
Newbeecoder.UI项目是一款轻量级的WPF开源UI库,它集合多个控件于一体,能快捷把控件融合到项目中。同时因为它基于MVVM框架。使开发者能够方便快速搭建通用MVVM模式创建应用程序。让用户不需要详细了解每个功能,该开源框架非常有用,无需执行任何操作。借助于XAML语言特性,实现前后端分离。
通过视频了解开源项目功能和框架结构:
开源框架Newbeecoder.UI
Demo下载:
Newbeecoder.UI开源项目
https://share.weiyun.com/py6W1dcK
Newbeecoder.UI框架项目界面采用当前主流设计,通过设置主题颜色或自定义主题切换风格。
各种Button类型按钮和样式,用户根据自己需求自由扩展。
数据库操作功能。
多种类型TextBox输入框和密码输入框。
设置软件主题颜色和窗口带圆角、阴影等。
代码结构和功能模块如下图:
Newbeecoder.UI开源框架项目的出现解决了界面库开发软件不美观、框架结构细节处理不好、代码过于复杂、开发效率低下、生成程序体积大等问题。使用该框架能快速搭建开发者所需项目,不用去研究UI控件实现细节,稳定框架为用户节省大量时间及解决Bebug。让开发者专注实现项目中功能即可,代码中提供大量通用类和接口,方便扩展和调用。
为了满足用户需求,对Newbeecoder.UI开源界面框架项目进行功能扩充,新增数据库轻量级ORM模块、数据访问模型(Model)模块、Excel操作模块、绘图功能。ORM模块支持Sql Server,MySql,Sqlite等主流数据库。一对多或者多对多的映射关系,能快速连接和操作数据库表,支持多种组合查询和新增,修改数据表。 (Model)模块对数据表字段映射和封装,它提供了服务器端验证,当模型属性上使用这些特性时。可对字符非空,最大长度,值范围,两个属性相同,正则表达式字段验证。 Excel
Modern
UI
(http://m
ui
.codeplex.com/)是一个
开源
的
WPF
界面库,利用该界面库,我们可以创建很酷的应用程序。下面是Modern
UI
官方示例,你可以从官方网站直接下载源码运行,如果是.NET 4.0的话,记得要声明“NET4”预编译变量,否则无法编译通过。
这个界面
框架
是基于Modern
UI
来实现的,在该文我将分享所有的源码,并详细描述如何基于Modern
UI
来构造一个非常通用的、插件化的
WPF
开发
框架
。下载源码的同志,希望点击一下推荐。
本文将按照以下四点来介绍:
(1)Modern
UI
简介;
(2)构建通用界面
框架
的思路;
(3)基于Modern
UI
和OSGi.NET的插件化界面
框架
实现原理及源码分析;
(4)其它更有趣的东西~~。
要编写这样的
WPF
界面,我们需要在一个Window上声明菜单和Tab页面,下图是定义菜单的声明。
此外,每一个Tab风格页面,你也需要手动的为菜单创建这样的界面元素。
直接用这样的方式来使用Modern
UI
,显然不太适合团队协作性的并行开发,因为在一个团队的协作中,不同的人需要完成不同的功能,实现不同页面,每个人都需要来更改主界面。
我非常希望模块化的开发方法,因为这可以尽可能的复用现有资产,使程序员可以聚焦在自己关注的业务逻辑上,不需要关心
UI
的使用。下面,我将来描述基于Modern
UI
实现的一个通用界面
框架
,这个界面
框架
允许程序员在自己的业务模块中配置需要显示的界面元素。
通用界面
框架
实现思路:
我希望能够实现这样的通用界面
框架
:
(1)程序员可以直接实现需要展现业务逻辑的界面,不需要关注如何使用Modern
UI
;
(2)程序员可以通过简单的配置就可以将自己实现的业务逻辑页面显示在主界面中;
(3)这个界面
框架
可以完全复用。
当我看到Modern
UI
这个界面库时,我希望将应用程序做成模块化,每一个模块能够:
(1)通过以下配置能够直接显示二级菜单。
(2)通过以下配置能够直接显示三级菜单。
这样做的好处是,开发插件的时候可以不需要关心界面
框架
插件;团队在协作开发应用的时候,可以独立开发并不需要修改主界面;团队成员的插件可以随时集成到这个主界面;当主界面无法满足我们的布局时或者用户需求无法满足时,可以直接替换主界面
框架
而不需要修改任何插件代码。
最终的效果如下,以下界面的几个菜单及点击菜单显示的内容由DemoPlugin插件、DemoPlugin2插件来提供。当插件
框架
加载更多插件时,界面上会出现更多的菜单;反之,当插件被卸载或者被停止时,则相应的菜单将消失掉。
1. MetroFramework:是基于Metro设计语言的
UI
框架
,提供了丰富的控件和主题。
2. MaterialSkin:是基于Google的Material Design设计语言的
UI
框架
,提供了一些漂亮的控件和主题。
3. Guna.
UI
2:是一个现代化的
UI
框架
,它提供了很多高质量的控件和主题,支持winform和
WPF
。
4. Bunifu
UI
:是一个现代化的
UI
框架
,提供了很多漂亮的控件和主题,支持winform和
WPF
。
5. Krypton Toolkit:是一个非常强大的
UI
框架
,提供了很多高级的控件和主题,支持winform。
这些
框架
都是
开源
的,你可以根据自己的需要选择其中一个来使用。