在WPF應用程序,我有我的事件一類集中這樣的:如何將添加參數傳遞給我的集中事件處理程序?
public class EventFactory
{
public static void Button_Edit_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show("you clicked edit");
}
public static void Button_Add_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show("you clicked add");
}
}
讓我可以重用他們在許多的Windows這樣的:
public Window1()
{
InitializeComponent();
ButtonEdit.Click += EventFactory.Button_Edit_Click;
ButtonAdd.Click += EventFactory.Button_Add_Click;
}
這工作正常,但現在我想要事件在Windows上調用它們,我稱它們爲,當事件處理程序僅僅處於每個窗口的代碼隱藏。
我該如何注入一個窗口對象到事件處理程序,以便該事件處理程序可以直接操縱它,像這樣:
ButtonEdit.Click += EventFactory.Button_Edit_Click(this);
感謝您的代碼,運作良好,因爲它是一個簡單有用的模式將事件移出代碼 – 2009-12-14 08:19:26