Winform开发框架之Office Ribbon界面

简介:

在前面几篇文章介绍我的Winform框架随笔文章,包括有《Winform开发框架之字典数据管理》、《Winform开发框架之权限管理系统》、《Winform开发框架之终极应用》,其中Winform开发框架之终极应用是集众多功能与一身,提供综合一站式、整体性的传统应用系统的开发框架,在此基础上开发新的业务系统,开发工作则是事半功倍,而且提供了高效、统一的界面布局以及支持多种数据库的数据访问层支持,提供了基于大量数据的数据分页解决方案,提供了传统Excel报表以及自定义模板的高级Excel报表的解决方案支持。我们先回顾一下框架的整体介绍图片。

  

 基于上面的内容,我在之前《》中开发了一套基于传统界面的框架,如下所示:

 

这种界面是较为传统的界面框架,统一性及美观性都是比较标准的Winform界面,由于本人之前研究开发过基于DotNetBar框架的Office Ribbon样式的Winform界面,详细可以参考文章《如何使用dotnetbar控件来构造多文档界面》 ,因此本人想把这些界面样式整合到我的Winform开发框架中,作为另外一种界面样式的Winform开发框架。经过周末不少时间的整理改造,成功改造原有传统的Winform开发框架界面,界面效果如下所示:

 
另外编辑界面也适当调整为:

 
以上界面样式和传统的界面开发框架有不少的差别,通过利用Office2007 Ribbon样式,可以放置更多的功能按钮,并像Office2007那样,可以折叠起来更有效利用界面空间,而且也能够给用户较为绚丽的界面,使得你的应用程序在客户中获得较高的印象分数。

整个界面工程如下所示:

 

虽然使用了基于DotNetBar控件改造了Winform界面,但是和之前的开发框架,界面之间的继承关系并没有变化,都是遵循下面的原则: 

1、停靠在主窗体中的界面继承自基类BaseDock;

2、弹出的普通窗体,继承自基类BaseForm;

3、弹出的数据编辑窗体,继承自BaseEditForm,而BaseEditForm继承自BaseForm。

通过不同的继承基类,我封装了不同的处理函数,节省了子类的重复代码,并增强了Winform界面的统一性、良好封装性、良好可操作性。

下面总结几个界面改造过程中注意的事项:

1、如果是从已有Winform窗体中转换的话,需要把原有的TextBox控件、Label控件、ComboBox控件调整为TextBoxX、LableX、ComboBoxX控件外,还需要修改TextBox的Border.Class为TextBoxBorder(默认添加的TextboxX控件有该样式),否则样式没有边框,不好看;ComboBoxX控件的DrawMode修改为OwnerDrawFixed,否则同样没有边框,不好看。另外,如果Label或者文本控件的背景色存在白色,通过选定控件,拉动一下即可解决该问题。

2、虽然窗体集成自Office2007Form,界面已经有一些Office的界面效果了,不过为了好看,最好在窗体界面中添加一个PanelEx这样的控件,界面尽可能不要GroupBox控件,而是用PanelEx这样的控件来代替,这样效果好一些。

 

3、布局使用DotNetBar控件中的Bar控件或者Tab控件来替代原有的Weifenluo控件,这样整体性会好一些。

4、封装Bar控件,使之在创建窗体的时候,更加方便,而不需要更多的代码,如在主窗体中增加一个窗体,代码如下即可:

SetMdiForm(new FrmItemDetail(), "备件信息"); 

5、利用DataGridViewEx来替换默认的 DataGridView控件,整体效果也会更加好一些,用法是一样的。

基于Dotnetbar的Office2007最新Winform框架程序,

可以从网站地址http://www.iqidi.com/download/warehouse/Device_DotNetBar.rar下载

本文转自博客园伍华聪的博客,原文链接:Winform开发框架之Office Ribbon界面,如需转载请自行联系原博主。



目录
相关文章
|
C#
WPF 4 Ribbon 开发 之 应用程序菜单(Application Menu)
原文:WPF 4 Ribbon 开发 之 应用程序菜单(Application Menu)      在上一篇中我们完成了快捷工具栏的开发,本篇将讲解应用程序菜单开发的相关内容。如下图所示,点击程序窗口左上角的记事本图标(Application Button)会显示出应用程序菜单(Application Menu)列表,列表中的按键即为软件的一些基本功能。
2225 0
|
开发框架 负载均衡 Java
SpringCloud微服务实战——搭建企业级开发框架(十三):OpenFeign+Ribbon实现高可用重试机制
Spring Cloud OpenFeign 默认是使用Ribbon实现负载均衡和重试机制的,虽然Feign有自己的重试机制,但该功能在Spring Cloud OpenFeign基本用不上,除非有特定的业务需求,则可以实现自己的Retryer,然后在全局注入或者针对特定的客户端使用特定的Retryer。   在SpringCloud体系项目中,引入的重试机制保证了高可用的同时,也会带来一些其它的问题,如幂等操作或一些没必要的重试,下面我们实际操作来测试Spring Cloud架构中的重试机制。
478 57
SpringCloud微服务实战——搭建企业级开发框架(十三):OpenFeign+Ribbon实现高可用重试机制
|
开发框架 负载均衡 算法
SpringCloud微服务实战——搭建企业级开发框架(十二):OpenFeign+Ribbon实现负载均衡
Ribbon是Netflix下的负载均衡项目,它主要实现中间层应用程序的负载均衡。为Ribbon配置服务提供者地址列表后,Ribbon就会基于某种负载均衡算法,自动帮助服务调用者去请求。Ribbon默认提供的负载均衡算法有多种,例如轮询、随即、加权轮训等,也可以为Ribbon实现自定义的负载均衡算法。 Ribbon有以下特性:
460 57
SpringCloud微服务实战——搭建企业级开发框架(十二):OpenFeign+Ribbon实现负载均衡
MFC Ribbon开发中编辑框、下拉框始终为灰色的问题解决
MFC Ribbon开发中编辑框、下拉框始终为灰色的问题解决
312 0
|
C# 开发者
WPF 4 Ribbon 开发 之 标签工具栏(Tab Toolbar)
原文:WPF 4 Ribbon 开发 之 标签工具栏(Tab Toolbar)      本篇将开始介绍标签工具栏的开发内容,标签工具栏可以说是Ribbon 的核心部分,应用程序所有的功能特性都会集中在这里,一个强大的Ribbon 工具栏也是一款软件成功的关键。
1592 0
结合iconworkshop,创建ribbon界面
mfc实现的程序中,ribbon界面是主流,比较适合测量类项目。几个修改图标的小技巧:1、现有的bmp,可以直接修改 在好几个地方,已经将IDB_*和显示效果对接清楚了,直接修改这里的bmp,就可以起到效果。
1074 0