![软件开发视频大讲堂:ASP.NET从入门到精通(第4版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/710/26943710/b_26943710.jpg)
3.2 按钮类型控件
3.2.1 Button控件
1.Button控件概述
Button控件可以分为提交按钮控件和命令按钮控件。提交按钮控件只是将Web页面回送到服务器,默认情况下,Button控件为提交按钮控件;而命令按钮控件一般包含与控件相关联的命令,用于处理控件命令事件。如图3.8所示为Button控件。
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0077-0142.jpg?sign=1739279561-By9ZtUJ3FrP2JV0cOSRxWNLOMvkaoqRy-0-c35717c24336537dbced06d9eed89c64)
图3.8 Button控件
(1)Button控件常用属性
Button控件的常用属性及说明如表3.5所示。
表3.5 Button控件的常用属性及说明
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0077-0143.jpg?sign=1739279561-oA86gt7BtonqLCJLPZFwf5CWGgrbc3HF-0-3f819ed086abf591e3e43f57537c2421)
Button控件的大部分属性和Label控件类似,下面主要介绍Button控件的CausesValidation、OnClientClick和PostBackUrl属性的设置。
CausesValidation属性
CausesValidation属性主要用来确定该控件是否导致激发验证。例如,用户在注册时,将会添加多个验证控件,但在单击“重置”按钮时,并不需要触发验证控件的激发验证,此时就可以将“重置”按钮的CausesValidation属性设置为false,以防止在单击该按钮时导致控件的激发验证。
OnClientClick属性
OnClientClick属性用于获取或设置客户端上执行的客户端脚本,例如,可以在属性面板中设置Button控件的OnClientClick属性值为“window.external.addFavorite ('http://www.mingrisoft.com', ’吉林省明日科技’)”,当运行程序时,单击该按钮将会打开一个“添加到收藏夹”窗口,收藏本网站。
PostBackUrl属性
PostBackUrl属性是获取或设置单击Button控件时从当前页发送到的网页的URL,例如,可以在属性面板中设置Button控件的PostBackUrl属性值为NewWebPage.aspx,当运行程序时,单击该按钮将会跳转到新页(NewWebPage.aspx)中。
(2)Button控件常用事件
Button控件常用的事件是Click事件,该事件是在单击Button控件时引发的。
2.单击Button按钮弹出消息对话框
【例3.5】单击Button按钮弹出消息对话框。(示例位置:TM\sl\03\05)
本示例实现的主要功能是单击Button按钮,弹出一个消息对话框。执行程序,示例运行结果如图3.9所示,当单击“点击me”按钮时,将会弹出消息对话框,如图3.10所示。
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0078-0147.jpg?sign=1739279561-jqY7hTfbuifploQrlswuec2yzguo98jG-0-b36899d225a498867bea2c57eae98b5c)
图3.9 Button按钮示例
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0078-0148.jpg?sign=1739279561-IpoVnKsw2UUJUppOIgwT6r6HeyuqCXCw-0-9a2a6fec581c91310138f21fe458ebb2)
图3.10 单击Button按钮弹出的消息对话框
程序实现的主要步骤如下。
(1)新建一个网站,默认主页为Default.aspx,在Default.aspx页面上添加1个Button控件,Button控件属性设置如表3.6所示。
表3.6 Button控件属性设置
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0078-0149.jpg?sign=1739279561-QI04fTBWtLNGjlJtVru0WN789Vpc9dMc-0-142cfd28f7148932e617c10a59974657)
(2)在属性面板中单击按钮,找到Click事件并双击该事件,进入后台编码区,在Button控件的Click事件下编写如下代码:
protected void Button1_Click(object sender, EventArgs e) { Response.Write("<script>alert('Hello World! ')</script>"); }
3.2.2 LinkButton控件
1.LinkButton控件概述
LinkButton控件又称为超链接按钮控件,该控件在功能上与Button控件相似,但在呈现样式上不同,LinkButton控件以超链接的形式显示。如图3.11所示为LinkButton控件。
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0079-0151.jpg?sign=1739279561-TFNU6VUbVxb5rPKdfZBH0Ke2dLmntIwA-0-d0ef6616f5825335ae3e23e221a36732)
图3.11 LinkButton控件
注意
LinkButton控件是以超链接形式显示的按钮控件,不能为此按钮设置背景图片。
(1)LinkButton控件的常用属性
LinkButton控件的常用属性及说明如表3.7所示。
表3.7 LinkButton控件的常用属性及说明
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0079-0152.jpg?sign=1739279561-UaPBIG7pPVDz5Ms2hlinlvtamS5hYC5g-0-c83ca139c95b3640c06e8cbd7cfeb3fc)
该控件大部分属性设置与Button控件类似,下面主要介绍PostBackUrl属性的用法。
PostBackUrl属性用来设置单击LinkButton控件时链接到的网页地址。在设置该属性时,单击其后面的按钮,会弹出如图3.12所示的“选择URL”对话框,用户可以选择要链接到的网页地址。
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0079-0153.jpg?sign=1739279561-KmYxrY1ckABPuh4quiNnC6PjshZupmWY-0-8ea9d535a1899a338b87643291a4a5bc)
图3.12 “选择URL”对话框
(2)LinkButton控件的常用事件
LinkButton控件常用的事件是Click事件,该事件是在单击LinkButton控件时引发的。
2.使用LinkButton控件的PostBackUrl属性实现超链接功能
【例3.6】使用LinkButton控件的PostBackUrl属性实现超链接功能。(示例位置:TM\sl\03\06)
本示例通过设置LinkButton控件的外观属性来控制其外观显示,并通过设置LinkButton控件的PostBackUrl属性实现超链接功能。执行程序,示例运行结果如图3.13所示,单击图3.13中的“超链接”按钮,页面链接到Default2.aspx,运行结果如图3.14所示。
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0080-0154.jpg?sign=1739279561-zwH3TcHoMVoSjLfHh8otYyqMp7epMzjM-0-ba94646828c9e90e15707de7b106e3c9)
图3.13 LinkButton控件示例
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0080-0155.jpg?sign=1739279561-Mh2xnDKyqq8NwnmTgg8XKps2ha4HMtZH-0-0b50f9a323c3aa6e1403a2118acb0285)
图3.14 Default2.aspx页面
程序实现的主要步骤如下。
(1)新建一个网站,默认主页为Default.aspx,然后再添加一个用于超链接的Default2.aspx页面。
(2)在Default.aspx页面上添加1个LinkButton控件,其属性设置如表3.8所示。
表3.8 LinkButton控件属性设置
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0080-0156.jpg?sign=1739279561-E95e7cODCTvQN8hXyXto6dVcOjTGL8xY-0-4ec71461f758584cc280f4783e9ff660)
3.2.3 ImageButton控件
1.ImageButton控件概述
ImageButton控件为图像按钮控件,用于显示具体的图像,在功能上和Button控件类似。如图3.15所示为ImageButton控件。
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0080-0157.jpg?sign=1739279561-v4rxhuQ97d32JEviJnKmWrysiLA5bMhv-0-a6bebbaa588f2c22fce825209ffbac62)
图3.15 ImageButton控件
(1)ImageButton控件常用属性
ImageButton控件的常用属性及说明如表3.9所示。
表3.9 ImageButton控件的常用属性及说明
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0080-0158.jpg?sign=1739279561-FUwJBYyrJarbShseLGMzojphzvO8hk2a-0-490f0145e26778bc1d0155ad5651b87a)
ImageButton控件的大部分属性设置与Button控件类似,下面主要介绍ImageUrl和AlternateText属性。
ImageUrl属性
ImageUrl属性用于设置在ImageButton控件中显示图像的位置(URL)。在设置ImageUrl属性值时,可以使用相对URL,也可以使用绝对URL。相对URL使图像的位置与网页的位置相关联,当整个站点移动到服务器上的其他目录时,不需要修改ImageUrl属性值;而绝对URL使图像的位置与服务器上的完整路径相关联,当修改站点路径时,需要修改ImageUrl属性值。笔者建议,在设置ImageButton控件的ImageUrl属性值时,使用相对URL。
AlternateText属性
使用此属性指定在ImageUrl属性中指定的图像不可用时显示的文本。
(2)ImageButton控件常用事件
ImageButton控件常用的事件是Click事件,该事件是在单击ImageButton控件时引发的。
2.使用ImageButton控件显示图片并实现超链接
【例3.7】 使用ImageButton控件显示图片并实现超链接。(示例位置:TM\sl\03\07)
本示例主要通过设置ImageButton控件的ImageUrl属性和PostBackUrl属性来指定该控件的显示图片和超链接页面。执行程序,示例运行结果如图3.16所示,单击图3.16中的ImageButton按钮,页面链接到Default2.aspx上,运行结果如图3.17所示。
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0081-0161.jpg?sign=1739279561-cte4YGwvMR3578DUvKFc230BS3l7B0ng-0-5020d723564c7e4ade83a6f47fad7f36)
图3.16 ImageButton控件示例
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0081-0162.jpg?sign=1739279561-01TqTiCdfljXfo0ofQ1D7rKSlprJuOIB-0-1d24956018c7fb99efe7a028ef6dcaa6)
图3.17 ImageButton控件链接页面
程序实现的主要步骤如下。
(1)新建一个网站,默认主页为Default.aspx,然后再添加一个新页Default2.aspx,以便与Default.aspx进行链接。
(2)在Default.aspx页面上添加1个ImageButton控件,其属性设置如表3.10所示。
表3.10 ImageButton控件属性设置
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0081-0163.jpg?sign=1739279561-4WY4qMGkEZMj9ZY86VKZsdPvEmQ7lhZM-0-9d95c7baf89b9964828b8f7e9e839064)
3.2.4 HyperLink控件
1.HyperLink控件概述
HyperLink控件又称超链接控件,该控件在功能上和HTML的<a href="">控件相似,其显示模式为超链接的形式。HyperLink控件与大多数Web服务器控件不同,当用户单击HyperLink控件时并不会在服务器代码中引发事件,该控件只实现导航功能。如图3.18所示为HyperLink控件。
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0082-0164.jpg?sign=1739279561-7MVVRbIlnINUCzN03CgMCyWnxXRwlgQk-0-52c8140c256312d98393a99da91f719f)
图3.18 HyperLink控件
注意
单击HyperLink服务器控件不会引发任何事件,它只起到超链接的作用。
HyperLink控件的常用属性及说明如表3.11所示。
表3.11 HyperLink控件的常用属性及说明
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0082-0165.jpg?sign=1739279561-Zc0Q0i0nyryu8qKTqVEWSdBat2FsWCLy-0-5c38f5d84c724d184a518b67b960d338)
下面介绍HyperLink控件的一些重要属性。
NavigateUrl属性
NavigateUrl属性用来设置单击HyperLink控件时要链接到的网页地址,其设置方法可参见LinkButton控件的PostBackUrl属性设置方法。
Target属性
Target属性表示下一个框架或窗口显示样式,Target属性值一般以下划线开头,其常用成员及说明如表3.12所示。
表3.12 Target属性成员及说明
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0082-0168.jpg?sign=1739279561-adfYnlE9ohrfTubxf31AHbDkx74JsDCv-0-69ec76a62c9c030cce4ccd76dba18141)
2.使用HyperLink控件显示图片并实现超链接
【例3.8】 使用HyperLink控件显示图片并实现超链接。(示例位置:TM\sl\03\08)
本示例通过设置HyperLink控件的外观属性来控制其外观显示,并通过设置NavigateUrl属性指定该控件的超链接页面。执行程序,示例运行结果如图3.19所示,单击图3.19中的HyperLink按钮,页面链接到Default2.aspx上,运行结果如图3.20所示。
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0083-0169.jpg?sign=1739279561-4b5wleufw2mMuHHsghYR3PFBoUM2Cxh6-0-8913acc55b8fcf3be1ee96fe3fc260dd)
图3.19 HyperLink控件示例
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0083-0170.jpg?sign=1739279561-sh8xIuR93t4xnbjvOslV5M7pO9MAKL0J-0-52895f296c701537c36e08e58f779154)
图3.20 HyperLink控件链接页面
程序实现的主要步骤如下
(1)新建一个网站,默认主页为Default.aspx,然后再添加一个用于超链接的页Default2.aspx。
(2)在Default.aspx页面上添加1个HyperLink控件,其属性设置如表3.13所示。
表3.13 HyperLink控件属性设置
![](https://epubservercos.yuewen.com/ED414F/15367249104203106/epubprivate/OEBPS/Images/Figure-0083-0171.jpg?sign=1739279561-yL4UggMg0N1ptD99vMEJ0DYfaM8gQlSk-0-d944011999abf2277ddef18db0b3543c)
技巧
(1)单击按钮弹出新窗口
在开发网站时,经常会遇到单击前台页面的“后台登录”按钮,弹出一个新窗口,用于输入登录后台的用户名和密码。单击Button按钮弹出一个新窗口的代码如下:
protected void Button1_Click(object sender, EventArgs e) { Response.Write("<script language='javascript'>window.open('NewPage.aspx', '', 'width=335, height=219')</script>"); }
在打开的新窗口中,可以单击Button按钮关闭该窗口,该按钮的Click事件代码如下:
protected void Button1_Click(object sender, EventArgs e) { Response.Write("<script language='javascript'>window.close()</script>"); }
(2)打开Outlook窗口发送邮件
在开发网站时,经常会遇到单击“联系管理员”按钮,打开Outlook窗口发送邮件。实现该功能,可以将HyperLink控件的NavigateUrl属性值设置为“mailto:mingrisoft@mingrisoft.com”。
(3)设置IE主页
在开发网站时,经常会遇到单击“设置主页”按钮,将指定的网页设置为 IE 主页。实现该功能,可以将LinkButton按钮的OnClientClick属性设置为“this.style.behavior='url(#default#homepage) ';this.sethomepage('hppt://www.mingrisoft.com')”。