c# - 如何关闭一个窗体并打开一个新窗体?

标签 c# winforms windows-mobile compact-framework

我想知道打开新表单后如何关闭表单。

例如,我有一个登录表单,当他们登录时,我打开一个新表单,但我想关闭登录表单。

那么我该怎么做呢?

我正在 Windows Mobile 6 精简版上制作这些表格。不确定它是否会与 Windows 窗体中有所不同。

最佳答案

可以这样做:

static class Program
{
    /// <summary>
    /// The main entry point for the application.
    /// </summary>
    [STAThread]
    static void Main()
    {
        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);

        if (DialogResult.OK == new LoginForm().ShowDialog())
        {
            Application.Run(new MainForm());
        }
    }
}

如果凭据有效,应确保登录表单以 DialogResult.OK 关闭,否则以 DialogResult.Cancel 关闭:

private void ValidateLogin(...)
{
  ... // check credentials

  if(validCredentials)
  {
    this.DialogResult = DialogResult.OK;
    this.Close();
  }
  else
  {
   ... // up to you, maybe keep the form displayed to give user a chance to enter correct credentials
  }
}

}

无需隐藏任何内容。

关于c# - 如何关闭一个窗体并打开一个新窗体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1806253/

相关文章:

c# - 如何在 vb.net windows 应用程序中打印 html 页面

c++ - 我如何知道一个线程是否在 Windows CE 下挂起

c# - 紧凑框架: Unit tests won't hit breakpoints

c# - 带有文档索引作为附件的FileSystemwatcher

c# - 如何在 C# 中从 TFS 检索工作项列表?

c# - Windows 窗体组合框 - 数据绑定(bind)到多个属性

c# - 在 C# 中单击时清除单个文本框?

c# - 用户控件属性设计器属性

c# - 将 RTF 编辑为纯文本但无法再次打开

c# - Signalr 客户端版本 1.5,服务器版本未定义