我的形式比我可以打開它也通過按下F1,然後單擊此代碼首先我檢查如果窗體已打開或not.if被打開我只是想把它面前。我的問題是它不會帶來前面按F1或單擊ToolStripMenuItem,如果我打開它befor。帶來前面的形式的問題
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
Form2 form2;
form2 = new Form2();
if (e.KeyCode.ToString() == "F1" && Application.OpenForms.OfType<Form2>().Count() <= 0)
// the user pressed the F1 key
form2.Show();
else
{
form2.TopMost = true;
form2.BringToFront();
form2.Focus();
form2.TopMost = false;
}
}
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
Form2 form2;
form2 = new Form2();
if (Application.OpenForms.OfType<Form2>().Count() <= 0)
form2.Show();
else
{
form2.TopMost = true;
form2.BringToFront();
form2.Focus();
form2.TopMost = false;
}
}
你忘記在else子句中調用Show()。代碼是非常錯誤的,你不想創建一個新的表單,如果你已經有一個。 –