我打開窗口2爲「假彈出」把窗口2到前從停用Form1中
this.enabled = false;
MyForm2 myform2 = new MyForm2();
myform2.Show();
myform2.BringToFront();
當我處理窗口2我能Form1中回Form1上。
現在,如果用戶最小化兩個表單,然後單擊form1,form1將彈出他的disenabled狀態。 我需要彈出form2 insted。
所以我創建了一個靜態類來保存我最後一個活動表單。在form2(或任何其他形式)的加載時,我保存了最後一個活動表單。
protected override void OnLoad(System.EventArgs e)
{
base.OnLoad(e);
MyStaticClass.lastForm = this;
}
在Form1(和其他類似形式)我使用:
protected override void OnGotFocus(System.EventArgs e)
{
base.OnGotFocus(e);
if (!this.Enabled && MyStaticClass.lastForm!= null && MyStaticClass.lastForm != this)
{
MyStaticClass.lastForm.Show();
MyStaticClass.lastForm.BringToFront();
MyStaticClass.lastForm.Activate();
}
}
OnGotFocus被執行和我的節目/激活等不太多,但從未窗體2彈出。我究竟做錯了什麼?
謝謝 GG
如何使用模式彈出窗口。 –
使用myform2.Show(this); –