2

loginform2 つのフォームを作成しましたmainform。ログイン フォームはスタートアップ プログラムであり、ユーザー名とパスワードが正しいかどうかを検証し、メイン フォームを開きますが、問題はメイン フォームを開いた後でもログイン フォームがメイン フォームの後ろにあることです。 .

btnSubmit_Clickloginform別のコマンドを試しましたthis.Hide(), this.Close(), this.Disposed(), また、ロード時にメインフォームでこれらのコマンドを実行して を閉じますloginformが、まだそこにあるので、手動で移動したり閉じたりすることはできません。

loginform私のスタートアッププログラムです。

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

この問題で私を助けてください。

4

4 に答える 4

1

ログインフォームを再度使用する場合は、ログインフォームのみを非表示にする必要があります。

mainform mf = new mainform();
mf.Tag = this;
mf.Show();
this.Hide();

ログインフォームを再度表示する

var log = this.Tag as frmLog;
log.Show();
于 2013-04-15T02:41:01.217 に答える
1

次のように、ユーザーの資格情報を検証した後に新しいオブジェクトを作成し、以前のオブジェクトを非表示にするだけです。

private void btnLogin_Click(object sender, EventArgs e)
{
    //after successfull validation 
    mainform objMainform = new mainform();
    objMainform.Show();
    this.Hide();
}
于 2013-04-15T02:51:55.543 に答える