標籤:_for one detail 通過 全域 csharp hive 接受 定義
說起winform程式中表單之間的參數互傳,大家找度娘會找到很多方法:
1、在表單類中建立全域變數,類型為公開、靜態;
2、在表單類中定義狗仔函數;
3、通過實踐來船體參數;
這三種思路完全來自於霖小屋的c# winform表單之間傳遞參數問題總結,大家可以看看他的這篇部落格學習學習。
下面我要給大家說的一種方法相對來說有點繁瑣,但對於winform程式初學者來說絕對的受用。之前在度娘上尋找winform表單的顯示與隱藏受到點啟發,本來winform程式建立新的表單的時候是不帶參數的,為了能夠在關閉這個表單開啟主表單,在建立新的表單時傳入主表單變數,在建立的表單中用一個變數接收,這樣新表單中的變數就相當於主表單對象,就可以訪問主表單類中定義的方法和控制項的值及屬性,也可以做進一步的修改,這種方法傳值不是指主表單中的某個變數或值,而傳值是在建立表單的時候傳主表單類對象,可能你們還聽得雲裡霧裡的,給大家附上一段代碼,大家就能明白了。
private Form1 returnForm1 = null; public Form2(Form1 F1) { InitializeComponent(); // 接受Form1對象 this.returnForm1 = F1; } private void Form2_FormClosing(object sender, FormClosingEventArgs e) { //在建立表單Form2是傳入Form1類對象,這樣就可以訪問主表單Form1中的方法 和以及控制項的值和屬性 this.returnForm1.Visible = true; //恢複Form1 returnForm1.DateViewDetails();//載入運行線路資訊 returnForm1.showStation();//首末站資料載入 returnForm1.ComboBoxDetails();//掉電恢複區comboBox資料載入 returnForm1.showStation();//顯示首末站 }
c# winform 表單之間的傳參