将类中的值发送到表单

时间:2014-11-25 22:21:37

标签: c# forms class label

我想要做的是从一个类向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";

这可以通过简单的方式完成吗?没有大代码?

4 个答案:

答案 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();