对于用户控件的学习,现在只从以下几方面来理解一下:
1)何为用户控件?
以声明方式创建的服务器控件!相比一般控件来说,其最大的优势就是在同一个Web应用程序的多个页面可以重复使用,减少了其重复操作性,并且还可以加入自己的属性,事件和方法
2)用户控件特点?与Web窗体的相同点?
一个用户界面页
一个代码隐藏文件
用户控件:扩展名为.ASCX
用户控件中不包含<HTML><BODY><FORM>
所以两者之间是可以相互转换的。
用户控件的添加方法其实就如同添加web窗体一样,其作用如同一个模板的效果一样。
3)小demo:
之前做机房以及牛腩的登陆的时候,并没有用到此方法,当时也只是一头雾水,现在才是有了一个清晰的理解。
在用户控件中添加的控件可以直接对齐赋值,如对于txtUserName而言(注意编写代码的时候,由于已经定义了txtUserName,所以再次使用的时候要用小写,或者换一个名字)
public string txtusername { set { this.txtUserName.Text =value ; } get { return this.txtUserName .Text ; } }这就是对于set和get的正确使用,set赋值,get传值
web窗体调用:
由于用户控件在web窗体中调用的时候,是一个整体,有了一个封装的概念,所以在调用的时候只能是通过其属性来执行
传值:
//如果查找不到的话,可以采用findcontrol去查找,转换类型 Response.Write(((testControl)this.tc1).txtusername); //Response.Write(((testControl)this.tc1).txtpwd);赋值:
((testControl)this.tc1).txtusername="huohuo"; //((testControl)this.tc1).txtpwd = "111";显示效果:
尤其是对于那些我们需要调错,却又不想将其窗体隐掉的,我们完全可以在用户窗体相关的HTML代码中填写相关信息:(省去很多麻烦事)
4)总结:
1、一个一个的控件其实都是相互联系的,正如这个用户控件,其实从名字上都能知道为用户全心全意服务啊,更加满足用户的需求。
2、一步一步逐步性的积累是必不可少的,区分其异同,进行总结。
原文地址:http://blog.csdn.net/huo065000/article/details/41831267