We have some legacy code that needs to identify in the Page_Load which event caused the postback. At the moment this is implemented by checking the Request data like this…
if (Request.Form[‘__EVENTTARGET’] != null
&& (Request.Form[‘__EVENTTARGET’].IndexOf(‘BaseGrid’) > -1 // BaseGrid event ( e.g. sort)
|| Request.Form[‘btnSave’] != null // Save button
This is pretty ugly and breaks if someone renames a control. Is there a better way of doing this?
Rewriting each page so that it does not need to check this in Page_Load is not an option at the moment.
This should get you the control that caused the postback:
Read more about this on this page: http://ryanfarley.com/blog/archive/2005/03/11/1886.aspx