[英]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.