簡體   English   中英

將值從類發送到表單

[英]Sending a value from a class to a form

我想做的是從一個類向Form1內的標簽發送一個值。 Form1已經在運行,所以我不能說Form1.Show(“ value”); 但我想要這樣的事情:

Form1 frm1 = new Form1();
frm1.label1.text = "Hello World"; //<-- i want to send this.

在VB中是這樣的:

Form1.Label1.Text = "Hello World";

那么這可以通過簡單的方式完成嗎? 沒有大代碼?

免責聲明:這可能表明您走錯了路。

就是說,您無法執行此操作,因為控件是私有成員。 但是,您可以通過屬性公開它們:

//Form1.cs
public Label SuperLabel { get { return label1; } }

...

//Other.cs
frm1.SuperLabel.Text = "Hello World";

更好的方法

//Form1.cs
public void SetSuperText(string text)
{
    label1.Text = text;
}

...

//Other.cs
frm1.SetSuperText("Hello World");

將公共屬性添加到您的窗體,並使用該屬性來設置窗體的標簽。

public string LabelText {
    get { return Label1.Text; }
    set { Label1.Text = value; }
}

然后從課堂上:

Form1.LabelText = "Hello World";

在標簽屬性中將“修飾符”設置為public

只需創建一個具有返回值的方法,例如:

Public string SettingTheLabel()
{
   //something here
   return "LabelText";
}

然后將包含文本的標簽文本設置為方法

Label1.Text = SettingTheLabel();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM