私のプロジェクトには、 と の 2 つのフォームがfrmLoginありfrmMainます。frmLoginからのログインに成功した後frmMain、次のようなことを行ってフォームをユーザーに表示しています。
フォームfrmLoginイベントbutton_click:
frmMain main = new frmMain();
main.Show();
this.Hide();
frmMainユーザーがログアウトするときに、(インスタンスではなく) 同じフォームを表示したいfrmLogin。これを行う方法?
私はこのコードを試しました:(私が欲しくない別のインスタンスを作成frmLoginしています)
フォームfrmMainイベントbutton_click:
if (MessageBox.Show("Do you really want to log out?", "Alert", MessageBoxButtons.YesNo).Equals(DialogResult.Yes))
{
this.FormClosing -= frmMain_FormClosing;
//
Process p = new Process();
p.StartInfo.FileName = Application.ExecutablePath;
p.Start();
//
this.Dispose();
}
指定子も使用してみinternalましたが、使用できません。
編集: 研修生として、Staticキーワードと変更を使用することは許可されていませんprogram.cs。上記のアプローチが制限された方法(私が言及した)を必要とする場合は、別のアプローチを提案してください。