[問題] Form值互傳

作者: MOONY135 (談無慾)   2016-03-14 18:44:15
想實作資料流是 FORM1 -> FORM2 -> FORM1
以下是結果
https://goo.gl/tgx3Bo
https://goo.gl/HYHddz
這是我的code Form1
https://gist.github.com/Aix-Shiao/85056db8bf235d6a9c0d
Form2
https://gist.github.com/Aix-Shiao/e002c526b91c54e4cc4b
然後我又看到這篇文章
https://dotblogs.com.tw/larrynung/archive/2009/03/24/7669.aspx
但我看不懂
Public Class Form2
{
...
Public Form1 MainForm;
...
//'Form2透過Form1傳進的物件參考控制Form1
MainForm.Value = this.NumericUpDown1.Value;
...
}
這段是甚麼意思 不知道有沒有人可以幫幫我 MainForm是一個特殊的物件嗎?
另外想請問如果有很多值要傳來傳去 那我的做法就沒有那麼好了
請問有沒有更好的方法
作者: wanderer1412 (.........)   2016-03-14 19:09:00
這是一個你中有我,我中有你的寫法Form2在建構時宣告了 Form1,而此時 Form 1在建構時把 Form2 的 Mainform 指定為自己彼此設定了 public 控制項傳遞值可以試試委派的方式來傳遞彼此的值?
作者: don750421 (1+1≠2)   2016-03-14 22:09:00
今天剛好也遇到類似的問題..使用的方式就如Wander前輩所說 https://4fun.tw/gmFT
作者: TameFoxx (foxx)   2016-03-15 10:45:00
Mainform只是個欄位喔 需要從form1把form1自己傳給form2form2的Mainform才能指向form1物件都是被new出來的 程式從program進入的時候new過一次form1form1被new出來的時候會直接new一個form2而按下按鈕後會把form1(this)丟到form2的Mainform欄位所以就可以從form2的Mainform欄位來控制form1
作者: MOONY135 (談無慾)   2016-03-15 12:48:00
請問一下這樣Mainform欄位是塞了多少東西啊 我只能想像一個欄位塞一個值
作者: TameFoxx (foxx)   2016-03-15 12:50:00
Mainform欄位 塞form1這個物件
作者: neo5277 (I am an agent of chaos)   2016-03-15 13:24:00
一看寫法我也覺得是一個form1型別的物件實體我以前有寫過這種小東西就是A輸入的東西B會所建即得這是你想要的嘛?
作者: MOONY135 (談無慾)   2016-03-15 14:40:00
對 其實我只是想是做而已http://code2study.blogspot.tw/2011/12/c.html這篇剛好就是wand大不建議寫 你中有我我中有你的原因嗎?
作者: wanderer1412 (.........)   2016-03-15 17:29:00
我也是看這篇學的,只是想不起這篇的關鍵字Orz...如果你的兩個 form 要互傳的控制項很少,或是預期幾乎不會再變動,趕時間的寫法可以用原本的但學會委派我是覺得更方便了
作者: MOONY135 (談無慾)   2016-03-15 18:32:00
我是覺得原本的方法遇到小功能 照抄就好但以後如果有其他需要 還是學會其他的比較好

Links booklink

Contact Us: admin [ a t ] ucptt.com