SharpDevelop浅析_5_Windows Forms Designer 自己动手创建应用程序界面设计器

来源:百度文库 编辑:神马文学网 时间:2024/07/07 14:11:32
SharpDevelop浅析_5_Windows Forms Designer
自己动手创建应用程序界面设计器
1、Demo界面及功能解释
2、Demo实现简述
3、参考资料
Demo下载
1、Demo界面及功能解释
编译并运行程序,界面如下:
图1:

图2:

功能概述:
a, 窗体左侧为工具栏,可以单击、双击、拖曳的方式来添加控件
b, 窗体右侧为属性(事件)窗口及控件(浏览)选择Combo
c, 窗体中部包括设计器及代码查看Tab页
d, 窗体顶部实现了编辑、对齐、运行等命令项
2、Demo实现简述
a, 设计器的核心是.NET框架提供的DesignSurface类、ServiceContainer类
b, 设计器的扩展点(自定义部分)是通过向ServiceContainer添加自动定义服务类(IOC模式?)或订阅服务类的事件……
c, Demo中的使用或创建的服务类包含了ISelectionService, IComponentChangeService MenuCommandService, CustomToolboxService, NameCreationService, DesignerEventService, EventBindingService.
d, 补充说明: Demo左侧工具栏项目是通过\data\SharpDevelopControlLibrary.xml配置文件定义;窗口中部的代码查看页中使用了SharpDevelop的TextEditorControl.
3、参考资料
关于自定义窗体设计器的具体设计过程请参照如下资源:
利用 .NET Framework 2.0 创建并宿主自定义的设计
Create And Host Custom Designers With The .NET Framework 2.0 (英文原文)
Hosting Windows Forms Designers
沧海月明 "写Form设计器尝试"系列
Demo中左侧工具栏的控件使用了 纶巾客 写的一个控件:
制作VS风格的Toolbox控件
对该控件的主要修改如下:
ToolBoxItem类添加了Tag及Image属性以存储Tag数据及显示图片
ToolBox增加了SelectedItemChanged, ItemDoubleClicked, ItemDragStart事件
--------------------------------------------------------------------------------------------------------------------------
SharpDevelop浅析系列这一阶段的文章基本完成了;
暂未涉及到Project组织方式, Debugger 及其它一些Addin项目的分析;学以致用,如果以后有应用需求,也可能会再来补充分析些其它有意思的项目吧...
posted on 2007-02-25 00:02lin-zhang 阅读(2283)评论(25)  编辑收藏 所属分类:SharpDevelop分析
360pskdocImg_2