0

我正在使用 Visual Studio 2008 在 C# 中创建一个 Windows 窗体应用程序。我的 有一个Button控件,它在事件MainForm时打开。AnotherFormClick

我想做的是:

  1. 一次只允许AnotherForm打开一次,并且
  2. 如果用户在已经打开的情况下尝试打开另一个AnotherForm,则显示错误消息,并将已经打开AnotherForm的放在前面。

我能够AnotherForm通过使用static字段将打开计数限制为 1。但是,我很难达到要求#2。它显示一条错误消息,但它不会将已经打开AnotherForm的文件带到前面。

这是我的代码:

**MainForm**
private void BtnToOpenAnotherFornn_Click(object sender, EventArgs e)
{
    AnotherForm af = new AnotherForm();
    if (af.GetNumForms() < 1)
        af.Show();
    else
    {
        MessageBox.Show("AnotherForm is already open.");
        //af.TopMost = true;  //Not working
        //af.BringToFront();   //Not working
    }        
}

**AnotherForm**
private static int NumForms = 0;
public int GetForms(){
    return NumForms;
}

有人可以告诉我如何在声明中带到AnotherForm前面吗?else

4

0 回答 0