我想要做的是从一个类向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";
这可以通过简单的方式完成吗?没有大代码?
答案 0 :(得分:2)
免责声明:这可能是您走错路的一个迹象。
那就是说,你不能这样做,因为控件是私有成员。但是,可以通过属性公开它们:
//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");
答案 1 :(得分:0)
向表单添加公共属性,并使用该属性设置表单的标签。
public string LabelText {
get { return Label1.Text; }
set { Label1.Text = value; }
}
然后从课堂上开始:
Form1.LabelText = "Hello World";
答案 2 :(得分:0)
在您的标签属性中 设置&#34;修饰符&#34;公开
答案 3 :(得分:0)
只需创建一个返回值为:
的方法Public string SettingTheLabel()
{
//something here
return "LabelText";
}
然后将包含表单上的标签文本设置为方法
Label1.Text = SettingTheLabel();