[問題] VB轉C# UI元件屬性問題

作者: prjryu (再努力一點)   2018-09-26 22:44:19
各位前輩請指教:
因演算法提供廠家說未來提供的library不再支援協助處理VB引用的相關問題,
小的沒學過也沒用過VB,唯多年前與C#有一段小小的緣分寫了個簡單的視窗程式,
然後就被指派到要將前人留下的VB程式改成C#...
轉換途中各種血淚就不多贅述,只覺得VB使用參數的方法實在是大開大合,
感覺全程式的變數都當全域變數在用,不得已之下(時程威逼趕鴨子上架),
我只好把Main Form上的元件(button, lable, textbox...)宣告也都加上static,
讓不同的cs檔可以直接打變數名稱使用,自己用也不用再加"this."了
功能已經沒有問題了,但發現後續維護問題很大,每當我調整UI(Form裡的元件),
Visual studio就會自動調整元件的宣告和定義,所有元件的宣告static會消失,
所有元件的屬性設定都自動被改成"this.元件名稱 = ...",而散在各處用到元件的檔案,
則是馬上爆出上百個錯誤,因為無法再取得原本的static form物件
請教版上大大,是否曾經遇過相似的問題,最後是怎麼解決的呢?
目前這問題實在太大,網路上也實在是沒找相關的資料,只能來這邊求助了O_Q
作者: forever84721 (Jay)   2018-09-27 09:22:00
如果是在其他form想要直接使用mainform的東西 那就建一個static類別(a) 裡面建static mainform(b)用來存mainform然後在開啟mainform的時候把自己傳給a.b在其他地方要使用就用a.b.button1之類的mainform要使用的元件記得設成public就好
作者: prjryu (再努力一點)   2018-12-02 14:57:00
謝謝大大

Links booklink

Contact Us: admin [ a t ] ucptt.com