ASP.NET的Postback

浏览:28日期:2023-04-09
我们知道,无论是ASP.NET1.x,;2.0,甚至是以后的版本,ASP.NET最终Render到Client端通过浏览器浏览的都是一样:一个单纯的HTML。Client通过;Submit;Form的方式将填入Form的数据提交给Server进行处理。我们现在来看看ASP.NET整个Postback程序处理的过程。;首先我们通过一个Sample来看ASP.NET如何处理一个通过Click一个Button引起的Postback。下面是Web;Page的HTML:<%@;Page;Language="C#";AutoEventWireup="true";CodeFile="Default.aspx.cs";Inherits="_Default";%><!DOCTYPE;html;PUBLIC;"-//W3C//DTD;XHTML;1.0;Transitional//EN";"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html;xmlns="http://www.w3.org/1999/xhtml"><head;runat="server"><title>Test;Page</title></head><body><form;id="form1";runat="server"><div><asp:Label;runat="server";ID="LabelMessage";ForeColor="red"></asp:Label></div><div><asp:Button;runat="server";ID="Button1";Text="Button1";OnClick="Button1_Click";OnCommand="Button_Command";;;;;CommandArgument="Button1";/><asp:Button;runat="server";ID="Button2";Text="Button2";OnClick="Button2_Click";OnCommand="Button_Command";;;;CommandArgument="Button2";UseSubmitBehavior="false";/><asp:Button;runat="server";ID="Button3";Text="Button3";OnClick="Button3_Click";OnCommand="Button_Command";;;;CommandArgument="Button3";UseSubmitBehavior="false";/></div></form></body></html>很简单,定义了3个Button,分别注册了他们的两个Event:Click和Command。3个Button的Command;Event;Hander是一样的:Button_Command,通过指定的CommandArgument来让Event;Handler判断到底是哪个Button触发了Command;Event。;下面是Code;Behind:using;System;using;System.Data;using;System.Configuration;using;System.Web;using;System.Web.Security;using;System.Web.UI;using;System.Web.UI.WebControls;using;System.Web.UI.WebControls.WebParts;using;System.Web.UI.HtmlControls;public;partial;class;_Default;:;System.Web.UI.Page{protected;void;Page_Load(object;sender,;EventArgs;e){}protected;void;Button1_Click(object;sender,;EventArgs;e){string;message;=;string.Format("The;{0};event;of;{1};is;fired",;"Click",;"Button1");this.LabelMessage.Text;=;message;}protected;void;Button2_Click(object;sender,;EventArgs;e){string;message;=;string.Format("The;{0};event;of;{1};is;fired",;"Click",;"Button2");this.LabelMessage.Text;=;message;}protected;void;Button3_Click(object;sender,;EventArgs;e){string;message;=;string.Format("The;{0};event;of;{1};is;fired",;"Click",;"Button3");this.LabelMessage.Text;=;message;}protected;void;Button_Command(object;sender,;CommandEventArgs;e){string;message;=;string.Format("The;{0};event;of;{1};is;fired",;"Command",;e.CommandArgument);this.LabelMessage.Text;+=;";;";+;message;}}
相关文章: