Atlas中的客户端控件均继承或间接继承于Sys.UI.Control基类,并有所扩展,本文将介绍Atlas内建的简单控件InputControl,TextBox,Button和CheckBox。
Sys.UI.InputControl
InputControl类是一个抽象类,作为所有提供用户输入的控件(例如TextBox,见下文)的基类,提供了输入数据验证等公有操作。InputControl抽象类提供如下属性:
isValid:该属性为只读,返回布尔值,代表输入数据经过验证后是否合法,即是否通过了所有Validator(请参考:在ASP.net Atlas中创建自定义的Validator)的验证。
validationMessage:该属性为只读,返回String。当验证失败时,它包含第一个引发失败的Validator的错误信息;若验证成功,则为空字符串。
validators:返回该InputControl的Validator集合,您可以通过这个属性添加/删除某个Validator来实现对用户输入信息的验证。
Sys.UI.TextBox
TextBox控件是任何一种GUI都必须提供的控件之一,也是我们最常用的和用户交互的控件之一。Atlas中的TextBox封装了type为input的DOM元素input,或是DOM元素textarea,继承于InputControl基类以获得输入数据验证的功能。TextBox提供如下属性。
text:获取或设置TextBox中的文字。
正因为TextBox在实际程序设计中非常常用,所以我们也经常需要对它的扩展。
Sys.UI.Button
Button控件在GUI中同样重要。Atlas将DOM元素中的Button概念扩展,使Button不单单指type为button或submit的HTML input元素,还可以应用到例如span,a等元素上,提供开发人员统一的编程接口。Button提供如下两个属性:
command:获取或设置代表该Button引发的命令名称的String。当该Button的父控件允许event bubbling时,父控件的onBubbleEvent事件处理函数中可以访问到该属性以得到该Button传递过来的命令名称。
argument:获取或设置代表该Button引发的命令参数的String。该Button的父控件允许event bubbling时,父控件的onBubbleEvent事件处理函数中可以访问到该属性以得到该Button传递过来的参数。
以上两个属性在某些情况中非常有用,您可以在这篇文章:使用 ASP.NET Atlas PageNavigator控件实现客户端分页导航中看到它们的实际应用。
Button还提供如下的事件:
click:在该Button被点击时触发。
注意:当某个Button被点击时,首先触发的是该Button的click事件,然后再触发该Button父控件的onBubbleEvent事件。
Sys.UI.CheckBox
Atlas中的CheckBox封装了type为checkbox的input DOM元素。用户可以使用它输入一个布尔值。CheckBox提供如下属性:
checked:获取或设置代表该CheckBox是否被选中的布尔值。
CheckBox还提供如下事件:
click:在该CheckBox被点击时触发。
本文中提到的控件均非常简单,故略去示例程序,欢迎大家留下看法或提出您的问题。在接下来的一篇文章中,我将介绍Select,HyPerlink,Label和Image控件。