日期:2014-05-17  浏览次数:20821 次

C#窗体怎样才可以让同一窗体只出现一次
共三个界面,一个主界面,两个子界面,通过主界面进入子界面,并隐藏主界面,并通过子界面上的button返回主界面,这是会出现两个主界面,每重复一次就出现一个主界面,怎样解决啊?那位朋友可以帮我一下,谢谢

------解决方案--------------------
主窗体:
C# code

            Form2 f2 = new Form2();
            f2.Show();
            this.Hide();

------解决方案--------------------
C# code
主窗体:
    public partial class FrmMain : Form
    {
        public FrmMain()
        {
            InitializeComponent();
            this.Text = this.Handle.ToString();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            this.Visible = false;
            Form1 frm = new Form1(this);
            frm.Show();
        } 
    }

Form1:
    public partial class Form1 : Form
    {
        private FrmMain _FrmMain;
        public Form1(FrmMain frmMain)
        {
            InitializeComponent();

            _FrmMain =frmMain;
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Close();

            _FrmMain.Visible=true;
        }
    }

------解决方案--------------------
主窗体:
C# code

        private void button1_Click(object sender, EventArgs e)
        {
            Form2 f2 = new Form2();
            f2.parentForm = this;
            f2.Show();
            this.Hide();
        }