如何从所有附加方法中清除事件

时间:2011-02-15 08:09:41

标签: silverlight events

我有一个控件,例如Button。我想清理事件OnClick,但我不知道它调用了多少方法,也不知道方法的名称(如:btn.OnClickClear();)。我找到了这个链接:http://msdn.microsoft.com/en-us/library/bb979826%28v=vs.95%29.aspx 但不明白如何在Silverlight中实现它。


我正在使用Silverlight 4.谢谢

1 个答案:

答案 0 :(得分:0)

不确定你是不是这个意思;但是当你在Button上添加一个事件监听器时,就像这样:

btnName.Click += new System.Windows.RoutedEventHandler(OnClick);

void OnClick(object sender, System.Windows.RoutedEventArgs e)
{
  // Handle event
}

您可以将其删除:

btnName.Click -= new System.Windows.RoutedEventHandler(OnClick);

在Button类中,你可以将Click事件设置为null,这样就删除了我认为的所有事件监听器。

this.Click = null;