天天看點

[C#] winform 子窗體向父窗體傳值

父窗框mainForm;子窗體childForm,利用事件進行傳值

在子窗體中的操作:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

<code>public</code> <code>event</code> <code>EventHandler accept;</code>

<code>public</code> <code>string</code> <code>value;</code>

<code> </code><code>private</code> <code>void</code> <code>btnStart_Click(</code><code>object</code> <code>sender, EventArgs e)</code>

<code> </code><code>{</code>

<code>  value=txtName.text;</code>

<code>  </code><code>if</code><code>(accept!=</code><code>null</code><code>)</code>

<code>   {</code>

<code>    accept(</code><code>this</code><code>, EventArgs.Empty);</code><code>//當事件觸發時,傳遞自身引用</code>

<code>   }</code>

<code> </code><code>}</code>

在父窗體中的操作:

18

19

20

21

22

23

24

25

26

27

<code>childForm frmChild=</code><code>new</code> <code>childForm();</code>

<code>private</code> <code>void</code> <code>btnForm_Click(</code><code>object</code> <code>sender, EventArgs e)</code>

<code>  </code><code>if</code><code>(frmChild.IsDisposed)</code>

<code>  {</code>

<code>    frmChild=</code><code>new</code> <code>childForm();</code><code>//時刻保持隻有一個窗體顯示</code>

<code>  }</code>

<code>  frmChild.accept += </code><code>new</code> <code>EventHandler(Main_accept);</code>

<code>      </code><code>frmChild.Show();</code>

<code>}</code>

<code>//父窗體處理子窗體傳來的值</code>

<code>public</code> <code>void</code> <code>Main_accept(</code><code>object</code> <code>sender, EventArgs e)</code>

<code>{</code>

<code>            </code><code>childForm frmChild= (childForm)sender;</code>

<code>            </code><code>string</code> <code>childValue = childForm .value;</code>

<code>    txtUser.text=childValue;</code>

本文轉自靜默虛空部落格園部落格,原文連結:http://www.cnblogs.com/jingmoxukong/articles/2118101.html,如需轉載請自行聯系原作者