我有一个登陆窗体,登陆后出现主界面,问题是.net里的什么都是类,都得实例化才能使用,我在登陆窗体里实例化了一个主界面窗体,登陆成功后转到主界面,卸载登陆窗体,但实例化是在登陆窗体中作的,如果卸载登陆窗体,主界面窗体也跟着没了,刚从vb转过来,不是很熟悉,希望大家指点一下。

解决方案 »

  1.   

    用sub Main 方法來控制窗體實力。或者先實例主窗體並隱藏然後實例登陸窗體。
      

  2.   

    winform中用showdialog()做登陆窗体也可以吧
      

  3.   

    static void Main() 
    {
    frmLogin frm = new frmLogin();
    if(frm.ShowDialog() == DialogResult.OK)
    {
    Application.Run(new frmMain());
    }
    else
    {
    Application.Exit();
    }
    }
      

  4.   

    其中,在登陆窗体中,最重要的一句就是
    this.DialogResult=DialogResult.OK;  //当登陆成功时使用这句。
      

  5.   

    我真的很不好意思,问一下:这个Main()写在哪里?是类里吗?
      

  6.   

    在項目屬性裏面.
    有一個啓動.
    裏面選擇sub Main
      

  7.   

    static void Main()
    可以放到几乎任何一个类里。比如你可以把它放到public class Start里。
      

  8.   

    你不应该把登陆窗体作为主窗体,相反,登陆窗体应该是一个提供用户输入的dialog
    在主窗体的Load事件中:
    frmLogin loginForm = new frmLogin();
    DialogResult dr = loginForm.ShowDialog();
    if (dr == DialogResult.OK)
    {
        //...
    }
    else
    {
        this.Close();
    }