WinForm应用实战开发指南 - Office Ribbon界面的开发

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

PS:给大家推荐一个C#开发可以用到的界面组件——DevExpress WinForms,它能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!

点击获取DevExpress v23.1正式版(Q技术交流:523159565)

WinForm应用实战开发指南 - Office Ribbon界面的开发_第1张图片

基于上面的内容,开发了一套基于传统界面的框架,如下所示:

WinForm应用实战开发指南 - Office Ribbon界面的开发_第2张图片

这种界面是较为传统的界面框架,统一性及美观性都是比较标准的Winform界面。由于我们想要把这些界面样式整合到Winform开发框架中,作为另外一种界面样式的WinForms开发框架。经过整理和改造,成功改造原有传统的Winform开发框架界面,界面效果如下所示:

WinForm应用实战开发指南 - Office Ribbon界面的开发_第3张图片

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

WinForm应用实战开发指南 - Office Ribbon界面的开发_第4张图片

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

整个界面工程如下所示:

WinForm应用实战开发指南 - Office Ribbon界面的开发_第5张图片

虽然使用了基于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这样的控件来代替,这样效果好一些。

WinForm应用实战开发指南 - Office Ribbon界面的开发_第6张图片

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

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

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

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

本文转载自:博客园 - 伍华聪

你可能感兴趣的:(ribbon,UI开发,界面控件,devexpress,c#)