通常都是在事件订阅端注册和取消注册的,比如说
事件发布端:
public class Publisher
{
public delegate void SomeEventHandler(object arg1, object arg2);
public event SomeEventHandler SomeEvent;
public void FireSomeEvent()
{
if (this.SomeEvent != null)
{
this.SomeEvent(null, null);
}
else
{
Console.WriteLine("Some Event has not been subscribed");
}
}
}
事件订阅端:
public class Subscriber
{
public void SubscribeSomeEvent(Publisher publisher)
{
publisher.SomeEvent += this.OnSomeEvent;
}
public void UnsubscribeSomeEvent(Publisher publisher)
{
publisher.SomeEvent -= this.OnSomeEvent;
}
public void OnSomeEvent(object arg1, object arg2)
{