您的位置:首页 > 编程语言 > ASP

ASP.NET~用户控件优化的登陆demo

2015-02-24 15:43 344 查看
对于用户控件的学习,现在只从以下几方面来理解一下:

1)何为用户控件?

以声明方式创建的服务器控件!相比一般控件来说,其最大的优势就是在同一个Web应用程序的多个页面可以重复使用,减少了其重复操作性,并且还可以加入自己的属性,事件和方法

2)用户控件特点?与Web窗体的相同点?

  相同之处:

       一个用户界面页

       一个代码隐藏文件

  异同之处:

用户控件:扩展名为.ASCX

用户控件中不包含<HTML><BODY><FORM>

所以两者之间是可以相互转换的。

用户控件的添加方法其实就如同添加web窗体一样,其作用如同一个模板的效果一样。

3)小demo:

之前做机房以及牛腩的登陆的时候,并没有用到此方法,当时也只是一头雾水,现在才是有了一个清晰的理解。

在用户控件中添加的控件可以直接对齐赋值,如对于txtUserName而言(注意编写代码的时候,由于已经定义了txtUserName,所以再次使用的时候要用小写,或者换一个名字)

[csharp]
view plaincopyprint?





public string  txtusername 

        { 
            set 

            { 
               this.txtUserName.Text =value ; 

                 
            } 
            get 
            { 
                return this.txtUserName .Text ; 

            } 
        } 

public string  txtusername
{
set
{
this.txtUserName.Text =value ;

}
get
{
return this.txtUserName .Text ;
}
}
这就是对于set和get的正确使用,set赋值,get传值

web窗体调用:

由于用户控件在web窗体中调用的时候,是一个整体,有了一个封装的概念,所以在调用的时候只能是通过其属性来执行

传值:

[csharp]
view plaincopyprint?





//如果查找不到的话,可以采用findcontrol去查找,转换类型 

            Response.Write(((testControl)this.tc1).txtusername); 

            //Response.Write(((testControl)this.tc1).txtpwd); 

//如果查找不到的话,可以采用findcontrol去查找,转换类型
Response.Write(((testControl)this.tc1).txtusername);
//Response.Write(((testControl)this.tc1).txtpwd);
赋值:

[csharp]
view plaincopyp
4000
rint?





((testControl)this.tc1).txtusername="huohuo"; 

//((testControl)this.tc1).txtpwd = "111"; 

((testControl)this.tc1).txtusername="huohuo";
//((testControl)this.tc1).txtpwd = "111";
显示效果:





      尤其是对于那些我们需要调错,却又不想将其窗体隐掉的,我们完全可以在用户窗体相关的HTML代码中填写相关信息:(省去很多麻烦事)



4)总结:

1、一个一个的控件其实都是相互联系的,正如这个用户控件,其实从名字上都能知道为用户全心全意服务啊,更加满足用户的需求。

2、一步一步逐步性的积累是必不可少的,区分其异同,进行总结。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: