ASP.NET - 如何使用嵌套用户控件传播事件
问题描述:
我在页面上嵌套控件。例如:ASP.NET - 如何使用嵌套用户控件传播事件
Page
-ChildControl1 (of type AllOfMyItems)
-ChildControl2 (of type ListOfItems)
-ChildControl3 (of type MyItem <- this one fires event)
当子控件引发事件时,我希望页面处理该事件。什么是这样做的好方法?
Events and delegates似乎是一个好主意,在这里使用。
所以我试图做我的页面的Page_Init如下:
MyItem.SomethingHappened += doStuff();
什么是做到这一点的好办法?
答
我假设你没有从你的页面直接访问ChildControl2,那就是你的问题。
一种选择是将事件从一个UserControl泡泡到它的父UserControl等等,直到您的页面处理ParentControl.SomethingHappened事件。如果usercontrols不总是像本例中一样嵌套,则建议使用此方法。