1
我試圖找出一種方法,使我的事件註冊和取消註冊同步從我的初始化和清理。 我想要的是能夠調用通用方法來註冊或取消註冊一個事件,並只傳遞一個布爾值來進行操作。註冊/取消註冊事件處理程序的一般方法
我不想使用Window,但這是一個簡單的示例。
class EventSample
{
private Window myWindow;
public EventSample(Window window)
{
myWindow = window;
InitEvent(true);
}
~EventSample()
{
InitEvent(false);
}
private void InitEvent(bool register)
{
// I want a generic similar to that
RegisterEvent(register, myWindow.Activated, MyWindow_Activated);
RegisterEvent(register,myWindow.Closed , MyWindow_Closed);
RegisterEvent(register, myWindow.Closing ,MyWindow_Closing);
}
private void MyWindow_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
}
private void MyWindow_Closed(object sender, EventArgs e)
{
}
private void MyWindow_Activated(object sender, EventArgs e)
{
}
}
它是WPF嗎? 'RegisterEvent'方法是怎麼樣的? –