使用ASP.NET控件进行程序设计

原创 2005年05月06日 14:30:00
ASP.NET 控件时ASP.NET架构的基本组成部分。从本质上讲,ASP.NET是.NET
  Framework中的类,可以在ASP.NET页面上映射控件声明。然后,那些类根据他们的
  属性,为控件创建HTML。由于类的对象是在运行时间与页面一起被编译的,因此开
  发人员可以按照面向对象的方式访问那些对象,例如读取和更改他们的属性、调用他
  们的方法和处理服务器端的事件等。在传统ASP程序设计中,服务端的VBScript代码
  和HTML标记是混和在一起的,容易引起混淆。而在ASP.NET程序设计中,由于能够
  以面向对象的方式访问对象,因此可以创建结构更好、可读性更强的代码。
   
   1、  ASP.NET中的服务器控件
     ASP.NET提供了许多不同的服务器控件,他们可以分为以下几类:
     <1> HTML Server Controls(HTML 服务器控件):
     这些控件是包含标准HTML标记的  类,它由runat="server"属性进行声明。
     除了runat="server"属性之外,控件的其他声明  不变,但是通过代表控件的对象,
     可以在代码中访问、读取、更改控件的属性。例如, 支持runat="server"属性的
     3个标记是<a>、<select>和<input>。
   
    <2> ASP.NET Web Form Controls: 
    这是另一组复制基本HTML标记(例如<input>、<a>、<select> 和<button>等)的功能的控件,
    但是这组控件中的属性和方法是一致的,并且属性和方法的名字有一定的意义,因此,
    开发人员就可以比较容易地声明和访问他们。HyperLink、 ListBox和Button等都是这类控件。
   
    <3> ASP.NET list Controls(ASP.NET 列表控件):
      这组控件具有一致的命名规则,并且扩展了基本Web Form Control的属性。它们可以与
    数据源进行绑定(例如数据库、XML文件和数组等),并且能够以各种各样的方式(例如
    列表、表格、网格等)显示数据。
   
    <4> ASP.NET Templated Controls (ASP.NET模板控件): 这组控件为数据源中的每一个
    数据项而重复模板。他们允许您使用不同的模板去显示记录、编辑记录和强调重要
    的记录,并且还能够对分页的支持。
   
    <5> ASP.NET Rich Controls :  
      通过设置这类控件的一些属性, 可以让这类高级控件生成HTML和JavaScript代码。
    这类控件的杰出代表就是Calendar控件,本章的内容中将对这类控件进行详细讨论。
   
    <6> ASP.NET Validation Controls
      通过页面上声明这类控件,可以很容易地根据一定的标准或用户定义的规则(例如输入
      不能为空、输入必须是数字、输入的数字必须大于某个值等)对相关的输入进行验证。

 2 、通过编程的方式创建服务器控件
     使用ASP.NET , 可以创建HTML服务器控件的实例、使用面向对象的方法设置控件
     的属性,并把控件添加到页面的Controls集合中,这样,所有的工作都完成了。
     例如,下面的代码(HTMLServTest2.aspx中的代码) 是新ASPX页面的全部 内容:
     没有控件的声明,只有服务器端的Page_Load程序,这个程序动态地创建一个5行
     4列的表,并设置表的颜色和文本,然后在页面上把表显示出来:
       <script runat="server" language="C#">
 void Page_Load()
 {
  //create a new HTMLTable object
  HtmlTable table1 = new HtmlTable();
  HtmlTableRow  row;
  HtmlTableCell  cell;
  
  //set the table's styles
  table1.Border =1;
  table1.CellPadding =3;
  table1.CellSpacing =3;
  table1.BorderColor ="red";
  for(int i=1; i<=5; i++)
  {
   //create a new row and set its background color
   row = new HtmlTableRow();
   row.BgColor =(i%2==0 ?"lightyellow" : "lightcyan");
   
    for(int j=1; j<=4; j++)
    {
    //create a cell and set its text
    cell = new HtmlTableCell();
    cell.InnerHtml ="Row :" + i.ToString()+
      "<br>Cell:"+j.ToString();
      
      //add the cell to the current row
      row.Cells.Add(cell);
      }
    
     //add the row to the table
     table1.Rows.Add(row);
     }
    
    
     //add the table to page
     Page.Controls.Add(table1);
    
   }
 </script>
        上面的代码中有两个嵌套的循环:外层的循环创建行,然后进入内层的循环,内层的
    循环创建数据单元,并把数据单元添加到行的Cells集合中。当一次内层的循环结束时,
    带有数据单元的行就被添加到表的Rows集合中。最后一步是把表添加到页面的Controls
    集合中。执行的结果如图4-2。
     从创建的这个表中可以看到有多少个子控件(数据单元和行)被添加给父母的集合
     (Rows和Controls)。这个机制同样适应于处理其他的服务器控件。

VB.Net程序设计:动态添加按钮或者控件

由于程序需要,在一个窗体中,读取数据库的记录内容,然后在界面中添加相应的按钮,供用户点击,响应对应的事件。 谷歌一下很多,看到: http://developer.51cto.com/art/20...
  • linjimu
  • linjimu
  • 2013年03月29日 20:48
  • 1670

VB.Net程序设计:下拉列表树控件ComboBoxTreeView

此控件是MSDN和网络上的一些资料修改而来的。     控件用了ToolStripControlHost,是当下拉列表显示树的时候,主窗体不会事情焦点。     控件的树赋值加载节点和原来的一样。...
  • linjimu
  • linjimu
  • 2013年04月23日 09:17
  • 1058

asp.net WebForm程序删除.designer.cs文件,重新设计并绑定服务端控件时间

asp.net WebForm程序删除.designer.cs文件,重新设计并绑定服务端控件时间 1.介绍 正常情况下添加一个WebForm程序结构如下(命名为:myWebForm.aspx) 文件...

《ASP.NET AJAX程序设计 第I卷》的心路历程

====================================================== 注:本文源代码点此下载 =============================...

《ASP.NET.4高级程序设计》学习笔记2

1.web服务控件 list类型的控件例如droplist,响应多选事件,需要遍历Items集合。 2.数据验证控件   1)RequiredFieldValidator控件,常用于判断一文本框输...

21天学通asp.net程序设计

第一章:搭建asp.net开发环境 asp.net是统一的web应用程序平台 asp:由于asp是结合html页面源代码一起编译,所以运行缓慢、代码冗余、调试困难 asp.net:功能强大、安全...

使用ASP.NET AJAX Control Toolkit中的NoBot控件拒绝垃圾发布程序

10.1 NoBot:拒绝机器人程序 NoBot 控件可以为页面中的表单提供类似CAPTCHA[注释1]而却无需任何用户操作的验证,以阻止机器人程序自动提交垃圾信息。   10.1.1 ...

ASP.NET网络程序设计课件与源码

  • 2010年03月27日 10:12
  • 15.74MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用ASP.NET控件进行程序设计
举报原因:
原因补充:

(最多只允许输入30个字)