C各個窗體之間如何傳值啊,C 各個窗體之間如何傳值啊!

2022-08-13 03:10:28 字數 5686 閱讀 3192

1樓:優遊自如

1.利用建構函式傳參

比如想把一個窗體的例項傳到另一個窗體中,就可以form2 frm1 = new form2(this);

// 注意:這裡的this代表當前窗體例項,且form2的建構函式需要接收一個form型別的引數

2.利用屬性或有返回值的方法傳參

窗體1開放一些相應的屬性或方法

窗體2用窗體1的例項進行呼叫

3.利用額外的靜態快取

建立一個獨立於兩個需要傳參的窗體的靜態快取。

窗體1將需要傳給窗體2的東西存入快取,窗體2去快取讀取窗體1存放的東西。

2樓:匿名使用者

我一般有兩種做法,

一個是通過靜態容器。

第二個是在要傳值的窗體中加個屬性,用來引用另的窗體。

在new 出來時再引用好就行了。

像這樣:

class from1

int i1;

int i2;

from2 f2;

class from2 ;

int b;

from1 f1;

int b;

3樓:匿名使用者

也可以通過事件委託來傳值,特別是窗體間有父子關係,或者其中一個窗體做了某個動作後,需要其他窗體及時響應的情況下。

4樓:藍色天涯天涯

比如:你要傳的值為x

frmlogin login = new frmlogin();

login.tag= x;

login.show();

5樓:

新增窗體物件引用,定義public型別的外部介面。

6樓:宮恆滿

很簡單form2 frm1 = new form2(this);

frm1. 你傳過去的值(前提你要公開你要獲取使用物件的資訊)

7樓:

定義publict變數

8樓:天氣我知道

太簡單 不予回答 建議看書 寫例子 做實驗

c# 普通窗體間傳值的方法?

9樓:

方法一、利用屬性傳值

background:①點選 button按鈕,將主窗體form1中textbox1 中的值傳到 form2中的textbox2中。② 點選form2中的按鈕,將form2中textbox的值傳給主窗體的文字框。

1、 在form2中定義一個欄位,封裝成屬性:

private string flag;

////// 接收傳過來的值

///public string flag

set}2、 在form1 button按鈕事件中,例項化一個form2 窗體物件,並將textbox1中的值賦給 form2中的flag,這樣在窗體form2的登入事件中就可以獲取到窗體form1傳過來的值。

窗體:form1中的**:

private void button1_click(object sender, eventargs e)

}窗體:form2的load()事件

private void form2_load(object sender, eventargs e)

3、 子窗體傳值給父窗體(回傳) 點選form2中的button按鈕將form2中textbox的值傳給父窗體form1.

窗體:form2中的**

private void button1_click(object sender, eventargs e)

方法二、利用子窗體中的建構函式 (實現了父窗體給子窗體的傳值,但是子窗體的值回傳暫未實現)

1、 過載窗體form2中的 建構函式

string str = string.empty;//接收傳過來的值

public form2(string textvalue)

2、 主窗體呼叫子窗體時候傳引數:主窗體form1的button事件

form2 f2 = new form2(textbox1.text);

f2.showdialog();

10樓:匿名使用者

窗體間傳值的情況有很多種吧,不知道你說的那一種?通常是情況form1中呼叫form2,可以寫成form2 m_frm = new form2();m_frm.showdialog(); y =m_frm.

x(這裡是傳出引數);其中x為form2中變數,y為form1中變數。也可以對form2進行帶引數的初始化如form2 m_frm = new form2(x)(這裡是傳入引數)。

11樓:以暢

在**的最上方定義一個靜態的全域性變數

12樓:匿名使用者

public partial class form1 : formprivate void button1_click(object sender, eventargs e)

}public partial class form2 : formpublic static void fulldata(string text)}

c#兩個窗體之間textbox如何傳值

13樓:

form1 中 全域性變數form2 f2=new form2();

按鈕事件:

f2.show();

f2.getvalue=textbox1.text;

form2中 屬性

public string getvalue}

14樓:

form1 下的button下的的

form2 f2 = new form2();

f2.getid(textbox1 .text );

this.hide();

f2.show();

form2 的**:

public form2()

public void getid(string id)

c#中form窗體之間怎麼傳值?

15樓:匿名使用者

通過窗體的構造方法傳值

列:要將form1中的一個字串傳進form2中只需要這樣寫//form2中的構造方法

public form2(string str)//form1中例項化form2

form2 f = new form2(str);

在c#中,如何實現在兩個窗體中相互傳值

16樓:匿名使用者

原創********************這個簡單。。。

直接告訴你答案也可以,告訴你精彩的細節更容易理解。

你定義的窗體,比如mainform,也就是一個類,是繼承於form的一個類

現在你定義了2個窗體類,一個是form1,一個是form2。

在類中傳遞值的方法有幾種:

方法1.公共變數

class form1

呼叫:form1 form1 = new form1(); //例項類

form1.omq504868 = 10;

方法2.公共屬性

class form1

呼叫:同上

}方法3:引數傳遞

class form1

}呼叫:

form1 form1 = new form1(10);

方法4:函式傳遞

到這裡,你可能理解還是有點難度。

那麼我舉個例。form2裡有列表框,其實是個**檔案管理器,點選列表框中的**檔名,form1就會顯示。

class form1

}呼叫:

class form2

}方法5:靜態變數。。。等等。

c#中form窗體之間怎麼傳值?

17樓:匿名使用者

通過窗體的構造方法傳值

列:要將form1中的一個字串傳進form2中只需要這樣寫//form2中的構造方法

public form2(string str)//form1中例項化form2

form2 f = new form2(str);

18樓:快樂的鹹魚

1、使用全域性變數(不推薦,公共變數一直都不是微軟推薦使用的)2、建構函式的過載(湊合,但是也不推薦,會影響設計階段的窗體載入)public formmain(引數)

{}3、窗體的showdialog過載(推薦這種方法)public dialogresult showdialog(引數)

19樓:朝花夕實

傳值??????

建立一個static 的類,裡面申請幾個變數。

int的,string的,float的。

當然,這些變數你可以作為static 的,這樣,不久簡單了。

在form1中給 變數1賦值,然後在form2中 用static的類名呼叫其中的變數1取值。

over

c#窗體之間傳值問題。

20樓:

比如: 視窗a 中有一個變數,要傳到視窗b中第一步:

在b視窗定義一個 變數

private string filepath;

修改b視窗的建構函式

public formb(string filepath)第二步,傳遞

string filepath=cc();

formb b=new formb(filepath);

b.showdailoge();

或者在b視窗定義一個 公有變數

public string filepath;

在a視窗呼叫

formb b=new formb();

b.filepath=cc();

b.showdailoge();

到此就完了,在b視窗的filepath變數就已經有你傳遞的值進來了!!

你可以在b視窗中使用你傳遞進來的引數了!

21樓:

如果你這兩個視窗時同一個程序的,也就是同一個程式的話,方法還比較多,簡單點就是在目標窗體裡設定像你上面一張**的set,然後直接給fliename1賦值就可以了。

這時候牽扯到物件的問題,可以吧fliename1設定為靜態的,或者把目標窗體例項化的object靜態儲存,這樣通過這個靜態物件來訪問filename1

跨程序的話 就得用到外部啟動引數

22樓:

new 另一個視窗();

另一個視窗.屬性 = 值;

【[c#]winform窗體之間傳值】我寫了兩個窗體,想在兩個窗體之間傳值。 50

23樓:匿名使用者

form1 下的button下的的

form2 f2 = new form2();

f2.getid(textbox1 .text );

this.hide();

f2.show();

form2 的**:

public form2()

public void getid(string id)

C 怎麼2個窗體傳值問題,C 窗體傳值

private void button2 click object sender,eventargs e public partial class form2 formprivate string nameone public string nameonesetprivate string name...

c窗體之間的操作

把form2的button按鈕的modifiers屬性改成public 然後在form1裡的button按鈕裡 form2 f2 new form2 f2.show f2.button1.enable true using system using system.collections.generi...

C頁面間傳值問題 如何在跳轉時為指向頁面的屬性賦值

你的思路是想避免使用querystring session cookies等方法來實現頁面跳轉的同時為引數賦值。如果值是固定的,你就可以採用在page load事件裡面賦值,可以用iscrosspostback屬性來確認是否為一個跨網頁提交發生,如果這個屬性值為true,那麼目標網頁就是通過一個跨網...