一尘

修心 暖家 济友 哄崽-专注于 移动交互设 计,J2me,Android,Iphone,WindowsMobile移动方案开发...

  博客园 :: 首页 :: 联系 :: 订阅 订阅 :: 管理
  315 Posts :: 0 Stories :: 1709 Comments :: 46 Trackbacks

公告


昵称:一尘
园龄:4年
粉丝:40
关注:4

积分与排名

  • 积分 - 327314
  • 排名 - 215

最新评论

    主题,复合控件的一些概况(复合控件的样式和事件都是比较麻烦的,所以还是还重最简单的入手)
概况 
    前几章弄的都是一些简单控件,有时候,我们可能需要开发一些更加复杂的控件,比如微软自带的登陆控件,如果我们还继承webControl类,然后重写复合控件里的每一个子控件,包括她们的事件,处理回传事件,回传数据,状态维护等,为了做一个小小的控件,代码却上千行,都快要疯了 .
    是的,使用复合控件,可以在一定程度上减轻开发人员的开发难度,她的子控件可以自己维护自己的状态,可以自己呈现自己等。当然,如果她的子控件定义自定义的样式类型,那么子控件的样式还得开发人员自己来维护。

“拿来“道不远人(希望THIN见谅)
图一(还是直接看效果图吧)

控件组成说明
控件分四部分,一部分,控件自己本身,即容器本身;二部分,up按纽;三部分down按纽;四部分,textbox文本框。
控件设置
四部分的边框都设置成5px,然后再分别设置四部分的的边框颜色,定义后三部分的定位方式,包括position,right,left,top,button等,但遗憾的是,默认的Style类型并没有定位position等定位样式属性,怎么办呢?当然只能重子控件的样式类型了,为了减低复杂度,这里先不讨论她的事件。

图二(先看控件的组成代码)
定义部分

Code

将子控件一一放入Controls

Code

定义复合控件最外层元素(DIV)的属性

Code

定义复合控件的最外层元素DIV

Code

将子控件的样式一一扔进writer流,并改写子控件样式(自己的PositionStyle类型,后面会着重说明)

Code

整个控件的呈现过程到此结束
本想在这里,把控件的样式也说了算了,但考虑到可能篇幅太长,看得太累,还是留着下一节再说(待续中...)
一点牢骚
其实可以多看看别人写的一些控件,比如我要学习复合自定义的样式,直接看看TableStyle样式就得了,看看她是怎么实现的,照葫芦画瓢就是了:)
demo将在下一节中提供,抱歉...




 

posted on 2008-04-16 09:55 一尘 阅读(2580) 评论(9) 编辑 收藏

Feedback

#1楼2008-04-16 10:09李战      
楼主的光头俺喜欢,学习了。
 回复 引用 查看   
#2楼[楼主]2008-04-16 10:14王孟军!      
@李战
别趁我的光头来呀!,注意这是tec blog
:)
 回复 引用 查看   
#3楼2008-04-16 10:26生鱼片      
学习
 回复 引用 查看   
#4楼2008-04-16 10:28留恋星空      
mark
 回复 引用 查看   
#5楼2008-04-16 10:44xrainfir      
学习
 回复 引用 查看   
#6楼2008-04-16 11:24Tony Zhou      
很多时候在1.1下,用户控件好多施展不开的地方。
有了复合控件,好多了。
 回复 引用 查看   
#7楼2008-04-16 11:50good man      
路过,学过,
 回复 引用 查看   
#8楼[楼主]2008-04-16 11:57王孟军!      
@all boy
:)
 回复 引用 查看   
#9楼2008-04-16 20:06侯垒      
 回复 引用 查看