在哪里设置用户控件事件处理程序?

时间:2009-03-22 14:15:26

标签: asp.net

在页面生命周期中哪里最适合为自定义用户控件引发的事件设置事件处理程序委托?

我有一个ReportFilter用户控件,可以引发ApplyFilterClicked个事件。目前我只是使用Page_Load来分配处理程序方法。

reportFilter.ApplyFilterClicked += reportFilter_ApplyFilterClicked;

2 个答案:

答案 0 :(得分:1)

如果您是动态创建用户控件,那么最合适的位置是在Init阶段,就在创建(或应该是)控件的位置。

否则,加载阶段将正常工作,并且可能是大多数人设置它们的地方。显然,你不能在晚于任何地方设置处理程序,否则它们永远不会被调用,因为事件处理阶段在Load之后是下一行。

答案 1 :(得分:0)

通常,init阶段最适合创建控件,因为这有助于对控件进行视图状态更新。查看此页面以获取有关页面生命周期的一些有用信息:

http://msdn.microsoft.com/en-us/library/ms178472.aspx

希望这有帮助