我有一个UserControl,我需要通知父页面说UserControl中的一个按钮被单击。如何在UserControl中引发一个事件并在主页上捕获它?我尝试使用static,许多建议我去参加 Activity 。

最佳答案

查看事件冒泡-http://msdn.microsoft.com/en-us/library/aa719644%28vs.71%29.aspx

例:

用户控制

public event EventHandler StatusUpdated;

private void FunctionThatRaisesEvent()
{
    //Null check makes sure the main page is attached to the event
    if (this.StatusUpdated != null)
       this.StatusUpdated(this, new EventArgs());
}

主页/表格
public void MyApp()
{
     //USERCONTROL = your control with the StatusUpdated event
     this.USERCONTROL.StatusUpdated += new EventHandler(MyEventHandlerFunction_StatusUpdated);
}

public void MyEventHandlerFunction_StatusUpdated(object sender, EventArgs e)
{
         //your code here
}

关于c# - 如何在用户控件中引发事件并在主页中捕获该事件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6192739/

10-11 13:46