
asp.net 3.5从入门到精通5 8.doc
135页第5章 Web窗体的基本控件与ASP不同的是,ASP.NET提供了大量的控件,这些控件能够轻松的实现一个交互复杂的Web应用功能在传统的ASP开发中,让开发人员最为烦恼的是代码的重用性太低,以及事件代码和页面代码不能很好的分开而在ASP.NET中,控件不仅解决了代码重用性的问题,对于初学者而言,控件还简单易用并能够轻松上手、投入开发5.1 控件的属性每个控件都有一些公共属性,例如字体颜色、边框的颜色、样式等在Visual Studio 2008中,当开发人员将鼠标选择了相应的控件后,属性栏中会简单的介绍该属性的作用如图5-1所示图5-1 控件的属性属性栏用来设置控件的属性,当控件在页面被初始化时,这些将被应用到控件控件的属性也可以通过编程的方法在页面相应代码区域编写,示例代码如下所示 protected void Page_Load(object sender, EventArgs e) { Label1.Visible = false ;//在Page_Load中设置Label1的可见性 }上述代码编写了一个Page_Load(页面加载事件),当页面初次被加载时,会执行Page_Load中的代码。
这里通过编程的方法对控件的属性进行更改,当页面加载时,控件的属性会被应用并呈现在浏览器5.2 简单控件ASP.NET提供了诸多控件,这些控件包括简单控件、数据库控件、登录控件等强大的控件在ASP.NET中,简单控件是最基础也是经常被使用的控件,简单控件包括标签控件(Label)、超链接控件(HyperLink)以及图像控件(Image)等5.2.1 标签控件(Label)在Web应用中,希望显式的文本不能被用户更改,或者当触发事件时,某一段文本能够在运行时更改,则可以使用标签控件(Label)开发人员可以非常方便的将标签控件拖放到页面,拖放到页面后,该页面将自动生成一段标签控件的声明代码,示例代码如下所示
注意:通常情况下,控件的ID也应该遵循良好的命名规范,以便维护同样,标签控件的属性能够在相应的.cs代码中初始化,示例代码如下所示 protected void Page_PreInit(object sender, EventArgs e) { Label1.Text = "Hello World"; //标签赋值 }上述代码在页面初始化时为Label1的文本属性设置为“Hello World”值得注意的是,对于Label标签,同样也可以显式HTML样式,示例代码如下所示 protected void Page_PreInit(object sender, EventArgs e) { Label1.Text = "Hello World
A Html Code"; //输出 HTML Label1.Font.Size = FontUnit.XXLarge; //设置字体大小 }上述代码中,Label1的文本属性被设置为一串HTML代码,当Label文本被呈现时,会以HTML效果显式,运行结果如图5-2所示。
图5-2 Label的Text属性的使用如果开发人员只是为了显示一般的文本或者HTML效果,不推荐使用Label控件,因为当服务器控件过多,会导致性能问题使用静态的HTML文本能够让页面解析速度更快5.2.2 超链接控件(HyperLink)超链接控件相当于实现了HTML代码中的“”效果,当然,超链接控件有自己的特点,当拖动一个超链接控件到页面时,系统会自动生成控件声明代码,示例代码如下所示
当用户选择,则为HyperLink1控件配置连接为注意:与标签控件相同的是,如果只是为了单纯的实现超链接,同样不推荐使用HyperLink控件,因为过多的使用服务器控件同样有可能造成性能问题5.2.3 图像控件(Image)图像控件用来在Web窗体中显示图像,图像控件常用的属性如下:q AlternateText:在图像无法显式时显示的备用文本q ImageAlign:图像的对齐方式q ImageUrl:要显示图像的URL当图片无法显示的时候,图片将被替换成AlternateText属性中的文字,ImageAlign属性用来控制图片的对齐方式,而ImageUrl属性用来设置图像连接地址同样,HTML中也可以使用来替代图像控件,图像控件具有可控性的优点,就是通过编程来控制图像控件,图像控件基本声明代码如下所示
开发人员能够为Image控件配置相应的属性以便在浏览时呈现不同的样式,创建一个Image控件也可以直接通过编写HTML代码进行呈现,示例代码如下所示












