c 中form 間的通訊問題

2025-03-18 05:25:20 字數 2942 閱讀 9935

1樓:

修改form1中變數的訪問級別為public

如果form2作為form1mdi子窗體顯示,則皮掘在form2中使用頌握敬 屬性訪野慎問父窗體。

如果form1,form2作為同級窗體,則可以在建立form2的時候將form1作為引數傳進去,

2樓:宣義坊的大螞蟻

最簡單的辦法是在form1中設定乙個public屬性比如passdata,form2通過這個屬性修改到這大謹個值。

在好一些的辦法是建立乙個全域性的變數,由form1在修改該變數值的事件中將修改後的值寫入這個全域性變數,form2讀取這個全域性變數使用這個值,這樣程式的派滑結構更加明晰,功能間更加獨立,利於以後維護。

如果兩個窗體不屬於同乙個appdomain,涉及到安全性問題,微軟的。net不允許兩個form存在直接通訊。我們可以通過form1寫乙個文字檔案,登錄檔鍵值等,form2到對應的地方讀取來實現。

當然這樣需要保證寫入的目錄或登錄檔鍵值對form1和form2都有許可權。

3樓:網友

很多啦。全域性變數啦,io流啦,資料庫啦高者殲,文戚衝本檔案,登錄檔之類的。

看什麼情況嫌含,具體用哪一種。講究時效,安全。

c# 中form與form之間的資料傳遞

4樓:是小白啊

form1中textbox的modifiers屬性要設定成public的。

單擊form1中的按鈕:

private void button3_click(object sender, eventargs e)

單擊form2中的按鈕:

private void button1_click(object sender, eventargs e)

5樓:食品中****

不能影藏,可以使用;或者。

我的導師說還要注意什麼記憶體",應該是針對2個窗體之間傳遞的資料而言,即2個窗體中的textbox資料在記憶體在使用同乙份資料。

c# 視窗間通訊

6樓:網友

第1個問題:

在 事件中程式設計,如果 屬性為 false,則關閉 form2 中的 timer1;

否則,就啟動 form2 中的 timer1。

第2個問題:

試著把 屬性設為 false。

c#中程序間通訊的問題

7樓:幸巴達

程序還是執行緒?

執行緒簡單,共享變數或者佇列就行了。

程序的話,除了命名管道共享記憶體還可以用socket,小資料的話可以用udp協議,容易實現。

8樓:龍的貓

程序間好像不允許直接通訊,不安全。

執行緒間可以。

程序間的通訊都是走協議介面。

c# 窗體之間資料傳遞的問題

9樓:網友

能否把這兩個資料設定成全域性的變數 或者在獲取這個資料的時候通過get方法來獲取。

10樓:網友

在form1中:把乙個文字傳遞給form2窗體,假定為passtext

public string passtext}

form1中還有個按鈕button1在其點選事件中有:

private void button1_click(object sender,eventargs e)

在form2的物件中:

假設有個文字框txtbox1,現。

private void form2_load(object sender,eventargs e)

在c#中怎樣在兩個form之間傳遞資料(winfrom)?

11樓:

**如下:

form2中先定義乙個delegate

public delegate void returnvalue( int i );

public returnvalue returnvalue;

form2 中的button按鈕**如下:

private void button1_click(object sender, e)

form1中的button按鍵如下:

private void button1_click(object sender, e)

private void showvalue( int i )

點選form2的button,form1中的textbox中的值就會相應變化。

12樓:網友

public class form1 : 兩個窗體之1static string opc;//靜態變數用來儲存public string xx

setget

public class form2 : 兩個窗體之2form1 form1=new form1();

要傳遞的值;

這個時候當執行了form2後,form2的值就儲存在form1中的opc裡。

根據具體問題型別,進行步驟拆解/原因原理分析/內容拓展等。

具體步驟如下:/導致這種情況的原因主要是……

c# 兩個form傳遞資料的問題

13樓:網友

改寫form2的建構函式。

改為 form f1=new form()public form2(form f)

newform2的時候 form1把自己傳進去例如 form2 f2=new form2(this);

然後form2的按鈕點選時,你要改的值"

14樓:匿名使用者

使用委託使,在form1中根據form2傳回的值改變textbox的text

在C 中對Form類定義的是哪個模組 宣告和方法應該放在程式的什麼位置

c form如何在程式載入的時候設定窗體顯示位置?點選你的主窗體,檢視屬性,然後在屬性中找到startposition,然後設定其屬性值為centerscreen就可以設定為在螢幕 顯示了,當然你也可以選擇其它方式。不明白在問,說的已經很清楚了。也可以在load事件中寫 new 窗體屬性startp...

c在form窗體的panel控制元件中新增label控制元件

寫代bai碼du zhilabel.top daopanel.height label.height 內容2 label.le f t panel.width label.width 2 我來告訴你標準答案 註冊panel的resize事件,裡面寫下這些 label.location newpoin...

VB中通過form1的控制元件呼叫了form2,怎麼將form2中的處理結果傳回form1的相應控制元件

label用陣列控制元件,不使用全域性變數的話,可以在form1中使用一個控制元件來儲存index form1 label1 0 label1 1 lblindex 前面兩個是陣列控制元件 form2 text1,command1 form1 code private sub label1 clic...