大大毛 的笔记

  DDM's Note

哪怕没有办法一定有说法,
就算没有鸽子一定有乌鸦,
固执无罪 梦想有价,
让他们惊讶.

posts - 14, comments - 23, trackbacks - 0, articles - 58
   :: 首页 ::  :: 联系 ::  :: 管理

ASP.NET学习笔记--02

Posted on 2006-08-08 00:04 大大毛 阅读(580) 评论(0)  编辑  收藏 所属分类: ASP.NET


   ASP.NET提供的WEB控件分类
      内部控件,基于HTML控件,具有 runas=server 的属性;
      列表控件,用于在WEB页中创建数据列表,常用的有 Repeater, DataList, DataGrid
      复杂控件,用简单控件聚合而成,如日历
      验证控件,对输入数据进行准确性和范围的检查(验证工作在 Server 端进行)


   文本输入
      textbox
      通过设置该控件的 TextMode 属性可以实现 1.单行文本 2.多行文本 3.密码文本 三种VIEW,多行文本模式时属性 cols,rows生效。

   
控制转移
      1.Button
      2.LinkButton
      3.ImageButton
      4.
HyperLink
      1 - 3 都属于 button ,可以响应事件,而 HyperLink 则不行。HyperLink 与 HTML 中的锚一样,点击它并不会产生向服务器的提交,而将在客户端完成跳转,与锚标记相比的好处在于,它属于服务器控件,因此可以在类中使用 this 指针加以引用,方便编程。
      Button 有个 commandName 属性,在演示中让它充当了 TAG 的角色,用于一个事件响应多个 Button 控件时对对象的区别:
         if( ((System.Web.UI.WebControls.Button)sender).CommandName == "b1" )
      LinkButton,样子与 HyperLink差不多,但是有着明显的区别,它是可以响应事件的(会产生对服务器的提交);
      ImageButton,具有一个ImageURL属性可以加载图片,AlternateText属性指定图片无法找到时显示的文字,另外它的事件响应形参类型也有着不同,是 ImageClickEventArgs 类型,该类型具有的 x,y属性可以使事件对于点击到图片上的具体区域做出反应。

   选择
      1.CheckBox
      2.RadioButton
      3.ListBox
      4.
DropDownList
      CheckBox,复选框,属性 Checked 表示该复选框是否被选中,另外还提供一个 CheckBoxList 作为一个集合控件方便操作;
      RadioButton,单选框,属性 Checked 表示该单选框是否被选中,通过设定多个 RadioButton 属性 GroupName 为相同值,可以很方便的将多个控件组合成一个Group,另外还提供一个集合控件 RadioButtonList
      有很多控件都具有一个 AutoPostBack 属性,该属性表示是否响应服务器事件,如果为false则不会响应事件,而为true时一旦触发事件就会向服务器提交,因此需要避免控件经常性的向服务端提交。

   容器
      Panel,面板。通常用于在同一页中实现切换(轮流显示)。

   复杂控件
      1.ADRotator,广告控件。AdvertisementFile 属性可以为控件指定一个XML配置文件,KeywordFilter 属性能够根据配置文件中各广告的 key 进行筛选。
      该广告控件一次只能显示一张图片,只有当刷新页面或重连时会选取其它的图片,相同于ASP中用的那个随机图片
      配置文件,一个<AD>标签代表一个广告。

XML配置文件

      2.Calendar,日历控件。

   上传控件
      FileUpload,文件上传。PostedFile 属性表示已经上传的文件对象,可以通过该对象的属性及方法获取上传文件的各种属性。FileName 属性表示上传文件的文件名(PostedFile对象也具有一个FileName属性,但是表示的是上传文件的全路径名,需要手工提取文件名)。PostedFile.SaveAs(path) 方法可以将上传的文件保存在服务端的指定路径下,注意这里的 path 必须是一个绝对地址,因此使用时需要进行相对路径-->绝对路径的转换,可以使用 Server.MapPath(path) 方法。

   验证控件
      1.RequiredFieldValidator,空值验证;
      2.CompareValidator,比较验证。该控件有三种工作方式
         .值比较,ValueToCompare 属性用于设定特征值,Type 指定特征值的类型,Operator 属性指定比较运算符 (Value Operator Control.value);
         .类型检验,Type 指定类型,Operator 属性使用 "DataTypeCheck";
         .控件比较,Type,Operator,ControlToValidate,ControlToCompare属性即可。
      3.RangeValidator,值域验证;
      4.RegularExpressionValidator,正则表达式验证;
      5.CustomValidator,自定义验证。它支持客户端及服务端自定义验证,Server 端验证时该控件提供一个ServerValidate事件,该事件的ServerValidateEventArgs对象类型参数的 Value 属性表示该控件绑定的被验证控件的 Value,IsValid 属性表示是否通过验证,只需在事件中根据自定义的规则设置 IsValid属性即可;
      6.ValidationSummary,列举页面中的全部验证错误信息。用于将错误信息集中显示。
      在页面中使用验证控件时,除了第1种,2-4都不会对空值进行验证,因此需要根据情况搭配使用。
      缺省情况下,有些验证需要在 server 端进行(如CustomValidator),流程会成为 先提交后验证,这时在编程时就需要用到 Page.IsValid 属性,只有当该属性为true时才表示通过了全部的验证。
      对于IE的低版本来说,客户端验证会出现问题,此时可以强行指定全部使用服务端验证<%@ page ClientTarget="DownLevel" %>
      在页面中常常包含大量的验证控件,在使用时常常需要根据需要使一组验证生效。此时验证控件的 ValidationGroup 属性就可以派上用场,该属性可以对验证控件进行分组,同时在使用时在能够引起提交的控件上指定ValidationGroup属性(该属性同样会影响到Page.IsValid的结果)。当然如果在页面上使用了ValidationSummary控件的话,也需要指定该属性,不然它不会显示对应组控件的错误提示信息。


只有注册用户登录后才能发表评论。


网站导航:
 

i am ddm