学习C/S结构开发框架从MDI起步
学习C/S结构开发框架从MDI起步
C/S开发框架MDI架构及Toolbar按钮共享
用户界面负责处理数据输入和数据采集等功能,设计一套人性化的UI十分重要。总结以前的设计经验和用户反馈的信息,前台基本要求是操作方便,界面友好,功能强大,响应快速。基于WinForm大多数应用软件是使用MDI(多文档界面)作为系统架构。这套架构最大的特点是用户可以同时浏览和操作多个窗体的数据,操作性特别强且简单易用。 Office是家喻户晓装机必备,借鉴它的强大功能和丰富的用户体验作为C/S开发框架的主要设计思路。主窗体Toolbar(工具条)接口设计是框架核心技术之一,所有子窗体共享使用主窗体上的工具条,当切换子窗体时Toolbar按钮的状态随之切换,互不干预。
/// <summary>
/// 工具栏接口 /// </summary> public interface IToolbarRegister : IDisposable { void RegisterButton(IList buttons); //注册按钮 void Dispose(); //重置工具栏按钮 IButtonInfo CreateSeperator();//创建分隔按钮,如"|" /// <summary> /// 创建工具栏上的按钮. /// </summary> /// <param name="name">按钮名称:如btnSave,btnClose</param> /// <param name="caption">按钮名称</param> /// <param name="image">按钮图片</param> /// <param name="size">按钮大小</param> /// <param name="clickEvent">按钮的Click事件</param> /// <returns></returns> IButtonInfo CreateButton(string name, string caption, Bitmap image, Size size, OnButtonClick clickEvent); } // 来源:www.CSFramework.com, C/S结构框架学习网
/// <summary>
/// 我的自定义工具栏 /// </summary> public class MyToolbarRegister : IToolbarRegister { Panel _pnl = null; Form _owner = null; public MyToolbarRegister(Form owner) { _owner = owner; _pnl = new Panel(); _pnl.Height = 36; _pnl.Dock = DockStyle.Top; owner.Controls.Add(_pnl); owner.Controls.SetChildIndex(_pnl, 1); } public void RegisterButton(IList buttons) { _pnl.SuspendLayout(); _pnl.Controls.Clear(); int top = 2; int left = 3; int margen = 4; foreach (IButtonInfo b in buttons) { Control ctl = b.Button as Control; ctl.Left = left; ctl.Top = top; _pnl.Controls.Add(ctl); left = ctl.Width margen; } _pnl.ResumeLayout(); } public void Dispose() { _owner.Controls.Remove(_pnl); } public IButtonInfo CreateSeperator() { return new MyButtonSeperator(_pnl); } public IButtonInfo CreateButton(string name, string caption, Bitmap image, Size size, OnButtonClick clickEvent) { return new MyButton(_pnl, name, caption, image, size, clickEvent); } } // 来源:www.CSFramework.com, C/S结构框架学习网
private void frmMDI_Load(object sender, EventArgs e)
{ this._MdiToolbar = new ToolStripRegister(this); // this._MdiToolbar = new MyStoolRegister(this); this.RegisterMdiButtons(); } // 来源:www.CSFramework.com, C/S结构框架学习网
扫一扫加作者微信 示范程序下载 (Source for VIP)
参考文档:
C/S结构系统框架-高级版 正在整理C/S结构系统框架 - 标准版(ADO Direct) Ver:2.2 C/S开发框架MDI架构及Toolbar按钮共享(原创) 基于.Net C/S结构系统开发框架 - 标准版V2.2正式发布! C# C/S结构快速开发框架标准版V2.2 - 视频介绍 C#.Net适合开发C/S结构的系统吗? C#.Net C/S结构开发框架中BLL层的作用 C#.Net C/S结构开发框架中数据访问层(DAL)的作用 Winform C/S结构开发框架客户机部署DevExpress DLL库 C#.NET C/S结构版本自动升级解决方案开发文档下载 基于C/S结构的开发平台|Winform开发框架研发的生产管理软件 C/S结构快速开发框架使用的DevExpress常用组件 C/S系统快速开发框架旗舰版V5.0《数据库表结构说明书》 公司管理系统框架 - 基于C/S结构Winform快速开发框架 数据库信息管理开发平台 - C/S结构+Winform+ADO.NET快速开发框架
其它资料:
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 | |