摘要: 本来还想写一篇有关ISupportInitialize的,但是想想需要用到ISupportInitialize的机会可能很少,所以就打算不写了,这个系列就到此结束吧。 这是我第一次写blog系列的文章,而且是写Component系列,可能实际工作中只有很少的朋友能用到,但是前八篇文章却有近8000的阅读,这也算是我继续写下去的一个原因,也希望园子里的朋友们能给我更多的评论,指出哪些地方写的不好,当然也可以给我发消息来探讨Component的技术。 为了便于大家阅读,前八篇文章的地址为:组件编程(1) 基础组件编程(2) PropertyAttribute和EventAttribute 组件编. 阅读全文
posted @ 2006-04-05 08:40 mapserver 阅读(4452) 评论(10) 推荐(1) 编辑
摘要: 每个Component不但是有Component Designer,而且还有Component DocumentDesigner,但这两个Designer之间到底有什么样的区别呢?我用比较通俗的讲法来给大家区别下,Component Designer是指一个Component被拖放到Form或者Page的Container上时所呈现出来的UI设计器(图1);Component DocumentDesigner则是指Component本身根文档设计器(图2)。 比如有两个Component,其名称为BaseClass1和Class1,且Class1继承于BaseClass1,我们为BaseCl. 阅读全文
posted @ 2006-04-02 13:37 mapserver 阅读(5552) 评论(5) 推荐(0) 编辑
摘要: Msdn上对DesignerActionList和DesignerAction的介绍为:DesignerAction 功能允许组件和控件显示区分大小写的信息和命令。DesignerAction 功能可被视为设计器谓词的替代项,因为 DesignerActionItem 可显示在智能标记面板中,也可显示在与组件或控件相关联的快捷菜单中。对于要在自定义组件和控件中添加智能标记支持的开发人员,DesignerActionList 类表示主交互点。DesignerActionList 是一个基类,组件开发人员可从中派生类来填充智能标记面板。智能标记面板将智能标记表示为类似于菜单的用户界面 (UI)。. 阅读全文
posted @ 2006-03-28 08:29 mapserver 阅读(5384) 评论(14) 推荐(0) 编辑
摘要: 这章主要讲Component的Designer,Designer顾名思义就是为Component设计时服务的,Designer可以在设计时修改组件的行为,还可以提供它自己的服务和行为。 在.net里要为Control或者Component定制Designer,只要从IDesigner继承下来即可,但是在.net里ms已经帮我们做了两个从IDesigner继承下来的基类,ComponentDesigner和ControlDesigner,ComponentDesigner是为Component而设计的,ControlDesigner是为Control而设计的,所以我们可以直接从Componen. 阅读全文
posted @ 2006-03-27 08:31 mapserver 阅读(7789) 评论(16) 推荐(3) 编辑
摘要: 上一篇文章是03-08写的,距离今天已经有十多天了没有写了,主要是最近太忙了,而且在工作上遇到了一些难点,所以没有时间放在blog上,实在是对不住大家。 今天的这篇文章,我主要是带来PropertyAttribute里的TypeConverterAttribute的讲解,首先在这里讲讲TypeConverterAttribute的作用是什么:当Component的某个Property被设置时,如Size="60,70",解析器会通过类型转化器,把这个字符串自动转换为属性声明的类型。.net的框架中已经声明了很多的类型转化器,下面的代码中有列举到。有点类似于operator。 阅读全文
posted @ 2006-03-20 08:26 mapserver 阅读(6529) 评论(18) 推荐(0) 编辑
摘要: 园子里的高人太多了,第2章遗留下来的Property DefaultValueAttribute问题解决掉了,感谢Colin Han的帮助,我对DefaultValueAttribute的理解有点误解了,msdn中对DefaultValueAttribute的说明为: “可视化设计器可以使用默认值重置成员的值。代码生成器也可使用默认值确定是否为成员生成代码”,我把其理解为了创建Component时,对标示有DefaultValueAttribute的Property产生默认值,Colin Han的解释为:“这个特性可以帮助IDE减少Code生成的工作,如果设计时某个标示有DefaultVal. 阅读全文
posted @ 2006-03-08 19:06 mapserver 阅读(6092) 评论(13) 推荐(0) 编辑
摘要: 上一章遗留的DefaultValueAttribute问题,还没有找到问题所在,我会继续查找资料,找到后会及时补上。 今天我们讲Component Property Editor UI,在vs环境中Property Editor有两种,一种是vs自带的,一种是Component编写者根据自己需求而重新编写的。在本章中我们这两种都会进行一个简单的学习,vs自带的主要讲Collection Editor。 先来回顾下我们上章没有讲的几个PropertyAttribute: EditorAttribute:指定Property Editor使用的编辑器。 DesignerSerializa... 阅读全文
posted @ 2006-03-08 08:45 mapserver 阅读(9008) 评论(36) 推荐(2) 编辑
摘要: 昨天晚上写了基础篇,有朋友说写的太简单,我想在这里申明下:因为我要写组件编程的完整系列,所以从最简单的开始写起,而且园子里有很多的朋友可能从来都没有写组件的经历,在这里希望有组件开发经验的朋友能多多包涵。 前一章,我们创建了最简单的组件,今天讲讲Component的PropertyAttribute和EventAttribute。 EventAttribute有: BrowsableAttribute 、CategoryAttribute、DescriptionAttribute、DefaultEventAttributePropertyAttribute有: BrowsableAttrib. 阅读全文
posted @ 2006-03-07 09:47 mapserver 阅读(9303) 评论(23) 推荐(1) 编辑
摘要: 注册blog已经很长一段时间了,但是却一篇文章都没有写过。想想也很惭愧,于是有了想写点东西的冲动。 介绍下我的工作,公司主要是开发第三方组件(Component)、控件(Control),我看园子里的朋友们写这方面不是很多(也许是我没有看到),所以打算写个关于组件开发的系列文章。 首先介绍基本知识,有很多的朋友搞不清楚Component与Control之间的区别,比较简单形象的区别有下面两点: 1、Component在Run Time时不能呈现UI,而Control可以在Run Time时呈现UI(但是vs 2005里的asp.net中的SqlDataSource是Control,但是它不能. 阅读全文
posted @ 2006-03-06 08:48 mapserver 阅读(13337) 评论(31) 推荐(6) 编辑