将值从类发送到窗体
本文关键字:窗体 | 更新日期: 2023-09-27 18:31:54
我要做的是从类 a 值发送到 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 string SettingTheLabel()
{
//something here
return "LabelText";
}
然后将包含窗体上的标签文本设置为该方法
Label1.Text = SettingTheLabel();