2016-08-04 20 views
-3

ログアウトをクリックすると別のフォームを表示するフォームがあります。はいをクリックすると、両方のフォームを閉じたり隠したりして、ログインフォームに移動します。どんな助けもありがとう。別のフォームでフォームを閉じる?

enter image description here

+4

OKですが、何を試しましたか?私はこれを読むことをお勧めします:[ask] –

+3

いくつかのコード、特にその部分を示す部分を表示してください。 –

+0

winforms? wpf?何か? – stuartd

答えて

2

あなたは子フォームの所有者を設定するためにフォームのOwnerプロパティを使用することができます。

public partial class Form1 : Form 
{ 
    public Form1() 
    { 
     InitializeComponent(); 
    } 

    private void button1_Click(object sender, EventArgs e) 
    { 
     Form2 form2 = new Form2(); 
     form2.Owner = this; 
     form2.ShowDialog(); 
    } 
} 

は、その後、あなたがそれを閉じ、あなたの二次形式で:

public partial class Form2 : Form 
{ 
    public Form2() 
    { 
     InitializeComponent(); 
    } 

    private void button1_Click(object sender, EventArgs e) 
    { 
     if (this.Owner != null) 
      this.Owner.Close(); 
    } 
} 
+0

ありがとう、本当に助けてくれました。 – leimelson06

+0

フォームの 'Owner'プロパティを使用してジョブを実行することもできます。これはより良い解決策になります。更新された答えを見てください。 – Alex

0

これはWinフォームソリューションです:

private void bLogout_Click(object sender, EventArgs e) 
{ 
    DialogResult result= MessageBox.Show("Are you sure want to logout?", "Confirm", MessageBoxButtons.YesNo); 
    if (result == DialogResult.Yes) 
    { 
    this.Hide(); 
    new frmLogin().Show(); 
    } 
} 
関連する問題