目前有個需求,Mainform會有資料再跑..,但是,MainForm又會有其他按鍵事件。
例如:要開啟一個Form做登入的視窗..
在不影響主Worm的情況下,選擇以下兩種方式..
第一種方式:
LoginForm TempLogin = new LoginForm();
TempLogin.TopMost = true;
TempLogin.Show();
第二種方式:
MainForm.Invoke(new MethodInvoker(delegate()
{
LoginForm TempLogin = new LoginForm();
TempLogin.TopMost = true;
TempLogin.Show();
}));
問題一:
請問一下,以上兩種方式所開啟的Form都是跑另一個Thread嗎? 那差異為何?
問題二:
假設我在LoginForm登入後,要把登入的人名帶回MainForm顯示...
所以,我在LoginForm 做一個 delegate,並在MainForm實作deleate。
把登入人員名稱顯示在ui上。
那麼我在MainForm顯示人員資訊在UI上,也是跑原本MainForm的Thread嗎?
還是跑我原本LoginForm的那個Thread? (會影響到MainForm執行嗎?)
問題三:
假設,我在LoginForm 上的某個按鈕事件 "動態產生Form(使用Form.Show())",
作為顯示人員的Detail資料,那麼,這個Form又會是跑哪個Thread呢?
最近剛在研究Thread和Form的關係,所以問題比較多@@
先謝謝各位前輩~