窗體傳值的幾種方法:
1.使用公共類
在專案中建一userhelper類,裡面都是靜態成員
class userhelper
public static int id;
public static string name;
各窗體可以把裡面的id,name當作全域性變數來用.
a窗體:
userhelper.id=10;
b窗體:
textbox1.text=userhelper.id.tostring();
2.窗體新增靜態屬性
給窗體新增乙個public static 的屬性,實際上和上面的方法是一樣的.
訪問方法如下:
form1.stuid=5;
3.使用建構函式傳遞乙個數值
class formb
int orgid;
public formb(int orgid)
this.orgid=orgid;
class forma
public void showb()
formb fb=new formb(5); // 5是要傳遞過去的值
fb.show();
4.把a窗體整個傳遞給b窗體
有些時候需要在b窗體裡對a窗體的某個控制項值做修改,並且需要立即改變a窗體的控制項顯示,本方法適合這種情況。
修改forma,把要在b裡處理的控制項的可訪問性(modifiers)設為public,然後按下面的方式處理
class forma
public void showb()
formb fb=new formb(this); // 在建構函式裡把a窗體本身傳過去
fb.show();
class formb
forma fm; //b窗體增加乙個forma型別的成員
public formb(forma fm) //新增乙個帶引數的構造方法,引數型別是forma
this.fm=fm;
protected void method1()
fm.txtname.text="haha!"; //在這兒可以直接操作a窗體裡的控制項了!
WinForm窗體間如何傳值的幾種方法
窗體間傳遞資料,無論是父窗體操作子窗體,還是子窗體操作符窗體,有以下幾種方式 公共靜態變數 使用共有屬性 使用委託與事件 通過建構函式把主窗體傳遞到從窗體中 一 通過靜態變數 特點 傳值是雙向的,實現簡單 實現 如下 在窗體form1中這樣呼叫 new form2 show 顯示form2 在窗體f...
窗體之間傳值的暴力方法
窗體之間傳值可以使用觀察者模式,但是如果設定乙個static 靜態 變數,好像更簡單。對於小型程式感覺是可用的 在前乙個窗體上 public static string x 試驗窗體切換的 private void button2 click object sender,eventargs e ca...
WinForm窗體間傳值的方法
winform窗體間傳值的方法,包括了靜態變數 公共變數 共有屬性等方式。窗體間傳遞資料,無論是父窗體操作子窗體,還是子窗體操作父窗體,有以下幾種方式 1.公共靜態變數 2.使用共有屬性 3.使用委託與事件 4.通過建構函式把主窗體傳遞到從窗體中 一 通過靜態變數 public class 在窗體f...