我的项目中有2个表单,form1和form2.当我单击form1中的按钮时,我运行以下代码:
Form tempform = new Form2(); tempform.Show();
在我的Form2代码中,我有一个标签,我现在需要更改文本.我如何访问标签?
我试过了:
tempform.label1.value = "new text"
这不起作用,我甚至尝试使用Controls集合进行访问,但我认为我搞砸了.有什么方法可以访问标签吗?或者有什么方法可以将值传递给新表单,然后让该表单更改标签文本.
谢谢
如果标签值只应设置一次,那么在创建表单时,请使用Form2的构造函数,如下所示:
public Form2(string labelValue) { _labelValue = labelValue; }
然后在创建表单时调用该构造函数.
或者,如果标签在表单的生命周期内发生变化,请创建公共属性:
public string LabelValue { get { return label1.Text; } set { label1.Text = value; } }
另外,我建议命名参数和/或属性以反映值的含义,例如"titleText"而不是"labelValue".这样,Form2可以决定它如何显示信息(在标题栏,标签,文本框等),Form1不必担心这一点.
编辑:使用LabelValue属性,如下所示:
Form2 newForm = new Form2(); // Assign object to a Form2 instead of Form newForm.LabelValue = "new text"; newForm.Show();