[問題] 有關thread的問題

看板C_Sharp作者 (...)時間17年前 (2008/05/21 17:46), 編輯推噓1(105)
留言6則, 3人參與, 最新討論串1/3 (看更多)
在寫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

05/21 17:50, , 1F
button2.PerformClick();
05/21 17:50, 1F

05/22 10:45, , 2F
把 sender 跟 e 放在陣列傳給 p
05/22 10:45, 2F

05/22 17:35, , 3F
1F的方法不行喔!我後來是用一般thread呼叫Form物件的方法
05/22 17:35, 3F

05/22 17:36, , 4F
用invoke跟delegate來完成,2F的方法也不行,thread沒有權限
05/22 17:36, 4F

05/22 17:36, , 5F
控制form的物件,即使丟過去也一樣,我試過了
05/22 17:36, 5F

05/22 17:37, , 6F
不過還是謝謝你們回答
05/22 17:37, 6F
文章代碼(AID): #18C-zr3D (C_Sharp)
文章代碼(AID): #18C-zr3D (C_Sharp)