我想知道在其他任何事件之前触发哪个事件?在按钮单击或任何其他控件之前触发哪个事件。如果没有,我如何自己实现一些事件?我还希望它与 UpdatePanel 一起使用。Page_PreRender 在其他事件之后触发......在它们之前触发的是哪一个?提前致谢。
问问题
297 次
1 回答
0
生命周期中有几个事件Page
发生在之前PreRender
。值得注意的是:Init
、Load
和 Postback 事件处理程序。
你能更具体地说明你想做什么吗?我建议使用Page_Load
在每次负载时做一些事情。这将允许您为要呈现的页面准备数据。
您可以初始化数据的第一个位置是在基类中或在Page
的构造函数中。这是在您的 中使用的一种模式Page
,例如 (c#):
public class MemberInfo : System.Web.UI.Page
{
// member variables
private string memberId;
// UI members defined in .aspx,.ascx,etc. file
protected System.Web.UI.WebControls.CheckBox checkboxPremiumMember;
// default constructor
public MemberInfo()
{
// step 1: initialize data
memberId = null;
}
// event handlers
protected void Page_Init(object sender, EventArgs e)
{
// step 2: initialize page controls and event handlers
checkboxPremiumMember.Visible = false;
}
protected void Page_Load(object sender, EventArgs e)
{
// step 3: load data, populate controls, databinding stuff..
memberId = Request.QueryString["memberId"];
bool authenticated = AuthenticateMemberId(memberId);
if (authenticated)
{
checkboxPremiumMember.Visible = true;
}
else
{
Response.Redirect("AccessDenied.aspx");
}
}
// step 4: postback event handlers (if any)
protected void checkboxPremiumMember_OnCheckChanged(object sender, EventArgs e)
{
}
// step 5: PreRender
protected void Page_PreRender(object sender, EventArgs e)
{
}
// step 6: Render
protected void Page_Render(object sender, EventArgs e)
{
}
}
还有一些其他事件,例如LoadViewState
andSaveViewState
等。您将希望了解 ASP.NET 页面生命周期。在此处查看相关答案:
ASP.NET 页面生命周期说明
或者只是谷歌“asp.net 页面生命周期”
于 2013-11-10T00:04:33.650 回答