我知道这已被问了数千次,但仍然经过大量研究后,我找不到解决方案,我对此帖非常抱歉。从另一个类/命名空间访问表单标签
我想从另一个命名空间的类访问我的Label。 这是一个代码示例,以更好地了解什么,我试图做的:
public partial class Main : Form
{
public Main()
{
InitializeComponent();
}
}
//class in another namespace
class Servers
{
public void _SetlabelText()
{
Main.label1.Text = "New Text";
}
}
我怎么做的正确方法?
这个不清楚。 Servers类负责实例化“主”表单吗?或者是“主”形式实例化服务器?什么叫'_SetlabelText()'? –
用简单的术语,你不能。你可以创建一个表单的静态实例并以父类的方式访问它:'''Parent {public static Form myForm {get;组; }'然后从另一个类访问它:'MyNameSpace.Parent.myForm.label1.Text =“一些文本”;'或者你可以像乔恩在答案中所做的那样填写所需类中的表单。 – CalebB
_SetlabelText()在服务器类中,但它在主窗体中被调用。我只是想将这些方法移到另一个类中,这样我就可以清理一些混乱。 – Maria