主程序的窗口不能关
可以hide() 隐藏

解决方案 »

  1.   

    //FormA
    form2 MyForm2=new form2();
    MyForm2.Show();
    this.Hide();  或者 this.Visible=false;
    都不行,程序也不出错,FormA就是不隐藏。
      

  2.   

    曾经在CSDN上看到过主程序关闭之后程序仍然继续存活,仔细查查看吧
      

  3.   

    private void Form1_Closing(object sender, System.ComponentModel.CancelEventArgs e)
    {
    e.Cancel=true;
    this.Hide();
    }private void button1_Click(object sender, System.EventArgs e)
    {
    Form2 frm = new Form2();
    frm.Show();
    this.Close();
    }不过你关闭Form2的时候要用
    Application.Exit();
      

  4.   

    你可以把带Main函数的东东不作为主窗体存在。
      

  5.   

    将B窗体作为主应用程序窗体,在启动中启动A窗体,这样A窗体可以使用this.Colse()方法
    B窗体也可以这样使用当然也可以使用Application.Exit()方法
      

  6.   

    在Show()之前把窗口关掉就OK了
    Form2 form = new Form2();
    form.Owner = this;
    this.Close();
    form.Show();
      

  7.   

    找到答案了,谢谢大家。
    有人说的把启动改在FormB中,启动A,然后在A中显示B,再关闭A,这样不行。程序还是一运行就退出。
    具体代码是:
    //FormB
    ......
    [STAThread]
    static void Main() 
    {
       Application.Run(new Form1());
    }
    ...//FormA
    Form2 Form2=new Form2();
    Form2.Show();
    this.Close();这样不行。呵呵,我还是采用4楼popcorn(米花.珠海)的方法,谢谢大家了。
      

  8.   

    这样可以吗?
    private void Form1_Load(object sender, System.EventArgs e)
    {
    System.Threading.Thread wel = new System.Threading.Thread(new System.Threading.ThreadStart(hai));
    wel.Start();
    this.Close();
    }    
    void hai()
    {
    Form2 frm = new Form2();
    frm.ShowDialog();
    }
      

  9.   

    呵呵,都是方法啊,csuwm_shepherd(牧羊人) 的帖子我到结贴时才看到,呵呵。方法简单,易用。
    最后一位回复的我还没来得及试,呵呵。先结贴吧,等我试了后单独给分。呵呵。
    CSDN上的人真好。