从另一个类访问一个表单上的标签

sot*_*ris 0 c# wpf controls winforms

可能重复:
在WinForms中访问另一个表单上的控件的最佳方法?

我知道这是一个令人眼花缭乱的明显问题,但我是新手#并发现它有点令人困惑,所以任何帮助都会非常感激...

我有一个mainform和第二个表单,我们称之为form2.form2上有一些标签.我想从mainform类/ cs表中控制这些标签的文本.无论我尝试什么,我似乎无法访问它们.我已经将其中一些设置为公开,我仍然无法在mainform类中"看到"它们.

mainform是wpf(就像项目一样).form2是一个常规的winform.

如果有人能帮助我,我将永远感激不尽.

谢谢,

ken*_*n2k 9

由于您的标签是私人的,因此只能从所有者表单访问它们.不要试图将它们改为公开,这是一种错误的做法(公众成员是邪恶的).

添加一个更新标签的公共方法,以便从第二个表单中访问它.

窗口2:

public void SetTextForLabel(string myText)
{
    this.myLabel.Text = myText;
}
Run Code Online (Sandbox Code Playgroud)

的MainForm:

myForm2Instance.SetTextForLabel("my text");
Run Code Online (Sandbox Code Playgroud)