伝統的な価値観の間にフォーム、親フォームのサブフォームを渡します

第一の方法:値渡さをForm1フォーム2として全体の形

                            

Form1のボタン1ポップは、from2は

numericUpDown1値が変化from2は、変更のForm1 textBox1テキストボックスの値となるよう。

Form1のコード:

        // 最初の方法:フォーム2の値として全体の形を渡す
        プライベートが 無効のbutton1_Click(オブジェクト送信者のEventArgs E)
        { 
            をForm1 FRM2 = 新しい新しいフォーム2(この); 
            frm2.ShowDialog(); 
        } 
        
       // 変化値textBox1テキストボックスの
        公共 無効 ChangeText(ストリングS)
        { 
            この .textBox1.Text = Sを; 
        }

Form2のコード:

       // あなたが側をForm1に呼び出すことができるようにForm1が、すべてのf1に割り当てられ渡す
        プライベートForm1のF1;
         公共のForm2(Form1ののFRM1)
        { 
            InitializeComponentの(); 
            F1 = FRM1; 
        } 

        プライベート 無効 numericUpDown1_ValueChanged(オブジェクト送信者、EventArgsのE )
        { 
            // をForm1にchangetextイベントを呼び出す
            f1.ChangeText(numericUpDown1.Value.ToString()); 
        }

 

第二の方法:イベントに委譲

         

 

Form1のボタン1ポップは、from2は

numericUpDown1値が変化from2は、そのように変更をForm1のtextBox1テキストボックスの値は、

空のForm1 textBox1テキストボックスの値となるよう、numericUpDown1空の値をfrom2は。

Form1のコード:

        // 2.登録イベント
        専用 のボイドのbutton1_Click(オブジェクト送信者、EventArgsのE)
        { 
            たForm3 FRM3 = 新新たForm3();
             //は+ =を書き、Tabキーを2回押すと、自動的にfrm3_changed、frm3_empty 2つのイベントが生成されます 
            frm3.UpdateTextValueEvent = + 新新 Form3.ChangeTextValueDelegate(frm3_changed); // イベント値変更 
            frm3.EmptyTextValueEvent + = 新しい新 Form3.ChangeTextValueDelegate(frm3_empty); //がイベント値クリア
            frm3.ShowDialogを(); 
        } 

        // 値変更イベント
        専用 のボイド frm3_changed(文字列S)
        { 
            この .textBox1.Text = ; S 
        } 

        // イベント値空
        プライベート ボイド frm3_empty(ストリングS)
        { 
            この .textBox1.Textを= "" ; 
        }

たForm3コード:

        // デリゲート1は、2つのパラメータやイベントの定義
        パブリック デリゲートの ボイド ChangeTextValueDelegate(文字列; S)
         パブリック イベントChangeTextValueDelegate UpdateTextValueEvent;
         パブリック イベントChangeTextValueDelegate EmptyTextValueEventを; 

        // 3.伝統的な価値観
        プライベート 無効 numericUpDown1_ValueChanged(オブジェクト送信者、EventArgsのE)
        { 
            UpdateTextValueEvent (numericUpDown1.Value.ToString()); 
        } 
        プライベート ボイドのbutton1_Click(オブジェクト送信者のEventArgs E) 
        {
            EmptyTextValueEvent(numericUpDown1.Value.ToString())。
        }

 

おすすめ

転載: www.cnblogs.com/Sukie-s-home/p/6269072.html