在 Web 应用程序和用户交互时,常常需要提交表单、获取表单信息等操作。在这其间,按钮控件
是非常必要的。按钮控件能够触发事件,或者将网页中的信息回传给服务器。在 ASP.NET 中,包含三
类按钮控件,分别为 Button、LinkButton、ImageButton。
Click 单击事件
在Click 单击事件中,通常用于编写用户单击按钮时所需要执行的事件,这种事件很简单,用户单击一个按钮,就会执行按钮中的代码。
Command 命令事件
按钮控件中,Click 事件并不能传递参数,所以处理的事件相对简单。而Command 事件可以传递参
数,负责传递参数的是按钮控件的 CommandArgument 和 CommandName 属性。CommandArgument 和 CommandName 属性
将CommandArgument和CommandName属性分别设置为Hello!和Show , 单击 创建一个Command
事件并在事件中编写相应代码,示例代码如下所示:
protected void Button1_Command(object sender, CommandEventArgs e)
{
if (e.CommandName == "Show") //如果 CommandNmae 属性的值为 Show,则运行下面代码
{
Label1.Text = e.CommandArgument.ToString();//CommandArgument 属性的值赋值给 Label1
}
}
Command 有一些 Click 不具备的好处,就是传递参数。可以对按钮的 CommandArgument 和
CommandName 属性分别设置, 通过判断 CommandArgument 和 CommandName 属性来执行相应的方法 。
这样一个按钮控件就能够实现不同的方法,使得多个按钮与一个处理代码关联或者一个按钮根据不同的
值进行不同的处理和响应。相比 Click 单击事件而言,Command 命令事件具有更高的可控性。
综上所述:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace WebApplication1
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
Label1.Text = "你点击了按钮";
}
protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
{
Label1.Text = "你点击了图片按钮";
}
protected void LinkButton1_Click(object sender, EventArgs e)
{
Label1.Text = "你点击了链接按钮";
}
protected void Button1_Command(object sender, CommandEventArgs e)
{
if (e.CommandName=="show")
{
Label1.Text = e.CommandArgument.ToString();
}
}
}
}
转载于:https://blog.51cto.com/felix520wj/1550376
ASP.NET按钮控件使用详解:Click与Command事件比较
本文深入探讨了ASP.NET中三种按钮控件:Button、LinkButton、ImageButton的区别,并详细对比了Click事件与Command事件的功能、用途及优缺点,通过实例代码展示了如何利用Command事件传递参数,实现更为灵活的事件处理。


2739

被折叠的 条评论
为什么被折叠?



