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

来源:互联网 发布:biz cc 域名 哪个好 编辑:程序博客网 时间:2024/06/06 12:22

对于用户控件的学习,现在只从以下几方面来理解一下:

1)何为用户控件?

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


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

  •   相同之处:

       一个用户界面页

       一个代码隐藏文件

  •   异同之处:

用户控件:扩展名为.ASCX

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

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

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

3)小demo:

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

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

[csharp] view plaincopyprint?在CODE上查看代码片派生到我的代码片
  1. public string  txtusername 
  2.         { 
  3.             set 
  4.             { 
  5.                this.txtUserName.Text =value ; 
  6.                  
  7.             } 
  8.             get 
  9.             { 
  10.                 return this.txtUserName .Text ; 
  11.             } 
  12.         } 
这就是对于set和get的正确使用,set赋值,get传值

web窗体调用:

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


传值:

[csharp] view plaincopyprint?在CODE上查看代码片派生到我的代码片
  1. //如果查找不到的话,可以采用findcontrol去查找,转换类型 
  2.             Response.Write(((testControl)this.tc1).txtusername); 
  3.             //Response.Write(((testControl)this.tc1).txtpwd); 
赋值:

[csharp] view plaincopyprint?在CODE上查看代码片派生到我的代码片
  1. ((testControl)this.tc1).txtusername="huohuo"
  2. //((testControl)this.tc1).txtpwd = "111"; 
显示效果:



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


4)总结:

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

2、一步一步逐步性的积累是必不可少的,区分其异同,进行总结。

0 0
原创粉丝点击