2017-10-06 4 views
0

私はForm1とForm2を持っていますが、Form1にはusernameやpasswordなどのテキストボックスとテキストボックス "region"があります。ユーザーが "region"(Form1.hide())を押すと、Form2はその上に領域の名前を持つ5つのラベルを開きます。別のフォームから既存のフォームを表示する方法は?

Form2の領域の名前をユーザーがクリックすると、その領域がForm1に表示されます。ユーザーがリージョンをクリックする前に入力したすべてのデータを保持します。 (フォーム2で)このような

何か:

private void center_Click(object sender, EventArgs e) 
    { 
     this.Hide(); 
     Form1.region = "center"; 
     Form1.show(); 
    } 
+0

は、あなただけのフォームのFormClosingイベントをサブスクライブする必要があります。それが起こったとき、そしてe.Cancelが偽であるとき、あなたはそれが死ぬことを知っているので、this.Show()と呼ぶのは良い考えです。 FormClosedがより良いアイデアのように聞こえることに注意してください。しかし、それは遅すぎて、別のアプリのウィンドウに注目するかもしれません。また、毎日使っているアプリはあまりないことに注意してください。通常、メインウィンドウが1つあり、ウィンドウ内にコンテンツが表示されます。 UserControlのような機能が役立ちます。 –

答えて

0

フォーム2

private void center_Click(object sender, EventArgs e) 
{ 
    Form1 frm1 = new Form1(); 
    frm1.textbox_region = whateverobject.text; 
    this.hide(); 
    frm1.show(); 
} 

で、これはその上に領域テキストでのForm1が表示されます。

0

はForm2のインスタンスを作成し、Form2を作成するとき

Form2 form2= new Form2(); 
form2.ShowDialog(); 
0

、単にパラメータとして、Form1を渡し、あなたのクリックイベントでテキストボックスの値を編集し、それを表示するShowDialog()メソッドを呼び出してみてください。 Form1上に

private void click_on_region(object sender, EventArgs e) 
{ 
    this.Hide(); 
    Form2 frm2 = new Form2(this); 
    Form2.Show(); 
} 

のForm2のは:

Form1 _frm1; 
public Form_Main(Form1 frm) 
{ 
    InitializeComponent(); 
    _frm1 = frm; 
} 
private void center_Click(object sender, EventArgs e) 
{ 
    this.Hide(); 
    _frm1.textBox_region.Text = whateverobject.Text; 
    _frm1.Show(); 
} 

これはきれいではないかもしれませんが、それは初心者のためにやります。

0

フォーム1つのコード

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


    private void button1_Click(object sender, EventArgs e) 
    { 
     Form2 objForm2 = new Form2(); 
     objForm2.ShowDialog(); 
     textBox_Region.Text = objForm2.RegionName; 
    } 
} 

とフォーム2のコード

public partial class Form2 : Form 
{ 
    public string RegionName 
    { 
     get 
     { 
      return textBox_Form2_Region.Text.ToString(); 
     } 
     set { } 

    } 
    public Form2() 
    { 
     InitializeComponent(); 
    } 
} 
関連する問題