C#_WindowsForm_跳頁x單向傳遞資料寫法_雙向傳遞資料筆記

平時在視窗程設上同學經常會遇到一個困難


就是 視窗 跳至下一頁做該視窗頁面 顯示之後

如何再返回原視窗(第一視窗)


首先


視窗我們先創建兩個

Form1的 設計


Form2的 設計








Form1.cs區塊


Form2.cs區塊


當你調用ShowDialog的一個形式,它會運行直到窗體的DialogResult屬性設置為None以外的東西,或者直到None以外的DialogResult屬性的子按鈕被點擊

代表視窗2狀態結束了並回傳結果



之後就會再回去 做 this.show() 顯示  Form1喔!!!

效果




學長我們要怎麼做傳數值呢???

我知道你會問所以先準備好了  textBox 了  還有在 Form2 新增好了Label了



在 Form1 的 textbox1 隨便輸入資料

按下 "跳下一頁" (form1_btnNext) 之後會將 Form1 裡的資料顯示在 Form2 的 Label上

單向傳遞資料

在新增 Form2 物件時直接傳送數值給建構式




將Form2 newForm2 = new Form2(); 移至 button事件中



緊接著來到Form2   ㄟ 怎麼多出了一串程式碼!!!!


這就是visual 剛剛幫你自動生成的喔~~~



改一下預設產生的code



這裡會接收你在Form1輸入的字串資料,之後當按下  button之後
開啟Form2並在 form2_label  做顯示

有時候命名要命名好  幫助觀念喔!!!!


這樣就能將 Form1 的資料傳至 Form2 了


效果影片




可是這寫法只適合一對一傳值

不太適合多資料傳送喔!!!!

有時我們可能會必須處理大量資料/多筆資料  互傳的時候

就不會這樣寫了  因為建構式會很攏長且不彈性



雙向傳遞資料


用函數來傳遞參考





在去Form2




效果呈現




留言

這個網誌中的熱門文章

何謂淨重(Net Weight)、皮重(Tare Weight)與毛重(Gross Weight)

Architecture(架構) 和 Framework(框架) 有何不同?_軟體設計前的事前規劃的藍圖概念

經得起原始碼資安弱點掃描的程式設計習慣培養(五)_Missing HSTS Header