我知道這已被問了數千次,但仍然經過大量研究後,我找不到解決方案,我對此帖非常抱歉。從另一個類/命名空間訪問表單標籤
我想從另一個命名空間的類訪問我的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