Freitag, 7. August 2009

Events im Page_Load abfangen - catch events in page_load

Manchmal könnte man einige Informationen einen Events schon im Page_Load benötigen. Hierzu kann man folgenden Code verwenden, damit dies funktioniert.

Sometimes you might need information of an event in the Page_Load. You can use this code to achieve this:

Page_Init
MyButton.OnClientClick = GetPostBackEventReference(MyButton);
Page_Load
string eventTarget = Request["__EVENTTARGET"];
if (!string.IsNullOrEmpty(eventTarget))
{
string[] arrNameParts = eventTarget.Split(Convert.ToChar("$"));
string strButtonName = arrNameParts[arrNameParts.Length - 1];
if(strButtonName == "MyButton")
Response.Write("Works");
MyButton_Click(null,null);
}

Der MyButton_Click event wird dann ausführen, was zu dem Button-Click gehört und somit wurde im Page_Load bereits verarbeitet.

The MyButton_Click event will then raise, what means, that the button-click already happend in Page_Load.

Keine Kommentare:

Kommentar veröffentlichen