如何在c#

时间:2015-06-04 13:47:11

标签: c#

我目前有一个登录窗口打开MainWindow,触发btnClick事件。通过单击此窗口中的按钮,此窗口应关闭并打开主窗口。

我尝试了但我仍然不知道如何从当前的主窗口访问主窗口。

以下是代码。希望得到一些帮助。谢谢! :P

using ....;

..........;

using ....;

namespace SampleWindowApp

{

    public partial class Login : Form

    {
        public Login()

        {

            InitializeComponent();
        }

        private void Login_Load(object sender, EventArgs e)

        {

        }

        private void loginbtn_Click(object sender, EventArgs e)
        {
            //ConnectionDAL obj = new ConnectionDAL();
            BL.LoginBL objBL = new BL.LoginBL();
            if(objBL.ValidateBL(txtUsername.Text, txtPass.Text))
                {
                    Mainfrmcs.Show;  <---
                    this.Close;      <---
                }
            else
                MessageBox.Show("Incorrect username or password.");
        }  
    }
}

这两行显示错误:

  

只有赋值,调用,递增,递减,等待和新对象表达式才能用作语句。

2 个答案:

答案 0 :(得分:1)

如果您认为自己在WinForms中工作 在显示或关闭任何您想要的内容之前,您必须对其进行定义 实际上,您尝试显示一个存在但没有对象影响的表单,并且它对于结束也是一样的。 您所要做的就是:

.
.
.
if(objBL.ValidateBL(txtUsername.Text, txtPass.Text))
    {
        Form Mainfrmcs = new Mainfrmcs();
        // I suppose there is no MdiParent if you're closing the other but if there was :
        Mainfrmcs.MdiParent = this;
        Mainfrmcs.Show();
        this.Close();
    }
else
.
.
.

(如果窗口仍然打开,方法.Close()不会退出程序.Application.Exit()将) 希望这有帮助!

答案 1 :(得分:0)

查看您的代码,看起来您在登录后打开表单,而不是编写Mainfrmcs.Show,您需要编写new Mainfrmcs().Show(),并且由于this.Close()关闭程序,您需要改变它this.Hide()