我正在使用两个 Windows 窗体应用程序,我想从第 2 窗体设置第 1 窗体标签的值。但是当我以第二种形式访问第一种形式标签时,应用程序会显示此错误
Object reference not set to an instance of an object.
我正在使用此语句访问
login_form.ActiveForm.Controls["label_name"].Text = "Hello World";
有时我工作得很好,但有时会显示此错误
请解决我的问题。我会非常感谢你。
我正在使用两个 Windows 窗体应用程序,我想从第 2 窗体设置第 1 窗体标签的值。但是当我以第二种形式访问第一种形式标签时,应用程序会显示此错误
Object reference not set to an instance of an object.
我正在使用此语句访问
login_form.ActiveForm.Controls["label_name"].Text = "Hello World";
有时我工作得很好,但有时会显示此错误
请解决我的问题。我会非常感谢你。
明智的做法是:
示例 #1:
public class Form1 : Form
{
public String LabelText
{
get { return label_name.Text; }
set { label_name.Text = value; }
}
}
//from Form2...
login_form.LabelText = "Hello World";
示例 #2:
public class Form1 : Form
{
public void SetLabelText(String TextToSet)
{
label_name.Text = TextToSet;
}
}
//from Form2...
login_form.SetLabelText("Hello World");
我不建议简单地将控件更改为Public. 间接访问是可取的。