看板 C_Sharp 關於我們 聯絡資訊
在寫C# windows程式時, 假如說有兩個按扭事件 可以用下面的寫法, 使得按button1時, 也觸發button2_Click的事件, 如下: private void button1_Click(object sender, EventArgs e) { button2_Click(sender, e); } private void button2_Click(object sender, EventArgs e) { . . . } 但如果是用Threadpool執行的程式片段, 想呼叫button2_Click , 如下: ThreadPool.QueueUserWorkItem(new WaitCallback(ABC)); 執行以下Thread: public void ABC(object p) { button2_Click(sender, e); <--這樣不行, 沒有sender跟e } 要怎樣才能在Thread裡去執行button2_Click? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.118.107.214
O2000:button2.PerformClick(); 05/21 17:50
hamsters:把 sender 跟 e 放在陣列傳給 p 05/22 10:45
xanlich:1F的方法不行喔!我後來是用一般thread呼叫Form物件的方法 05/22 17:35
xanlich:用invoke跟delegate來完成,2F的方法也不行,thread沒有權限 05/22 17:36
xanlich:控制form的物件,即使丟過去也一樣,我試過了 05/22 17:36
xanlich:不過還是謝謝你們回答 05/22 17:37