none
如何关闭除主窗体以外的所有窗体? RRS feed

  • 问题

  • 我说的主窗体是Application.Run(new Form1());中的Form1

    其它窗体都是单独的,与Form1相互间没有父子关系。

    因为写的程序要有个 ”首页“ 按钮,单击后要显示Form1而关闭所有其它窗体

    2012年7月25日 17:11

答案

  • 记录所有打开的窗体。可以用数组对象来记录。

    遍历所有窗体,关闭要关闭的,显示要显示的即可。


    family as water

    2012年7月26日 1:28
  • 查找所有已经打开的窗体,除了启动窗体,然后关闭。

    以下代码假设启动窗体为form10

      private void button2_Click(object sender, EventArgs e)
            {
                for (int i = 0; i < Application.OpenForms.Count; i++)
                {
                    Form fm=(Form)Application.OpenForms[i];
                    if (fm.Name!= "Form10")
    	             {
                         fm.Close();
    	             }
                  
                }
     
            }


    http://blog.csdn.net/zx13525079024

    2012年7月26日 1:42

全部回复

  • 记录所有打开的窗体。可以用数组对象来记录。

    遍历所有窗体,关闭要关闭的,显示要显示的即可。


    family as water

    2012年7月26日 1:28
  • 查找所有已经打开的窗体,除了启动窗体,然后关闭。

    以下代码假设启动窗体为form10

      private void button2_Click(object sender, EventArgs e)
            {
                for (int i = 0; i < Application.OpenForms.Count; i++)
                {
                    Form fm=(Form)Application.OpenForms[i];
                    if (fm.Name!= "Form10")
    	             {
                         fm.Close();
    	             }
                  
                }
     
            }


    http://blog.csdn.net/zx13525079024

    2012年7月26日 1:42