ASP.NET Button、ImageButton、LinkButton、HyperLink区别

这4个控件都属于WEB服务器控件,有很多相同的属性和事件。其区别如下所示。
q      在*.aspx页面中插入Button控件如以下代码所示。
<asp:Button runat="server" ID="b1" Text="Button控件" />
在页面运行后,Button控件最终生成的HTML标签如以下代码所示。
<input type="submit" name="b1" id="b1"value="Button控件" />
即Button控件最终生成的是HTML表单控件中的提交按钮,其“name”属性和“id”属性为服务器控件中的“ID”属性值。
q      在*.aspx页面中插入ImageButton控件如以下代码所示。
<asp:ImageButton runat="server" ID="b2" ImageUrl="/img/uc1.gif" />
在页面运行后,ImageButton控件最终生成的HTML标签如以下代码所示。
<input type="image" name="b2" id="b2" src="/img/uc1.gif" />
类似于Button控件,ImageButton控件最终生成的也是HTML表单控件,只是类型为图像,其“src”属性值(图像链接路径)即为服务器控件中的“ImageUrl”属性值。
q      在*.aspx页面中插入LinkButton控件如以下代码所示。
<asp:LinkButton runat="server" ID="b3" Text="LinkButton控件"></asp:LinkButton>
在页面运行后,LinkButton控件最终生成的HTML标签如以下代码所示。
<a id="b2" href="javascript:__doPostBack('b3','')">LinkButton控件</a>
和以上两个控件不同,LinkButton控件生成的HTML标签是超级链接,只是“href”属性指向一个浏览器端的javascript函数(__doPostBack函数),并传递两个字符串参数。其中,第1个参数是该服务器控件的“ID”属性值,第2个参数则为可传递给服务器的事件参数。
说明:__doPostBack函数的第1个参数即为引发页面回传的控件ID,后面讲述回传机制时会详细分析。
q      在*.aspx页面中插入HyperLink控件如以下代码所示。
<asp:HyperLink runat="server" ID="b4" Text="HyperLink控件" NavigateUrl="~/Index.aspx"></asp:HyperLink>
在页面运行后,HyperLink控件最终生成的HTML标签如以下代码所示。
<a id="b4" href="Index.aspx">HyperLink控件</a>
类似于LinkButton控件,HyperLink控件所生成的HTML标签是最常用的超级链接,其“href”属性即为服务器控件中的“NavigateUrl”属性值,指向一个页面的URL。
【分析】
本题考查面试者对几个常用且字面上容易混淆的服务器控件的认识程度。解答中通过这些服务器控件实际生成的HTML代码进行区分,Button控件使用非常频繁,该控件用于提交表单数据。ImageButton控件和Button控件基本相似,只是通过图像来表现外观,和Button控件的Click事件不同,ImageButton控件的Click事件是配合System.Web.UI.ImageClickEventHandler委托工作的。即ImageButton控件的Click事件处理方法中使用的事件参数类型为System.Web.UI.ImageClickEventArgs,两个参数X,Y可以获取用户单击的精确位置并做相应的处理。LinkButton控件和HyperLink控件直接生成超级链接标签,从外观上来看,LinkButton控件和HyperLink控件是一模一样的,因为它们生成的都是超级链接标签。以上几个控件中,只有HyperLink控件不传递数据给服务器,根据“NavigateUrl”属性直接跳转到指定页面。而其他三个控件都是通过表单将数据提交到服务器,LinkButton控件有点特殊,该控件通过javascript函数的__doPostBack函数将数据赋值给表单的隐藏字段,然后提交回服务器。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Button控件和ImageButton控件都是Android常用的UI控件,它们的优缺点如下: Button控件的优点: 1. 简单易用:Button控件是Android最简单和易用的控件之一,可以很方便地实现点击事件。 2. 样式灵活:Button控件的样式可以通过布局文件和代码进行自定义,支持文字、背景色、边框等多种属性。 3. 适用广泛:Button控件适用于各种场景,如登录、注册、提交等。 Button控件的缺点: 1. 样式单一:Button控件的样式相对比较单一,只能使用文字或者图片和文字的组合,不能直接使用图片。 2. 操作不够直观:由于Button控件只显示文字或者图片和文字的组合,不能直接显示图片,因此在一些场景下,操作不够直观。 ImageButton控件的优点: 1. 显示图片:ImageButton控件可以直接显示图片,可以更加直观地展示操作。 2. 样式灵活:ImageButton控件的样式可以通过布局文件和代码进行自定义,支持图片、背景色、边框等多种属性。 3. 适用广泛:ImageButton控件适用于各种场景,如分享、收藏等。 ImageButton控件的缺点: 1. 不支持文字:ImageButton控件不能直接支持文字,需要通过布局文件或者代码进行组合。 2. 操作逻辑不够清晰:如果图片不够清晰或足够说明操作的含义,可能会造成用户的困惑。 总的来说,Button控件和ImageButton控件都有各自的优缺点,根据实际需求进行选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值