Я знаю, что это было задано в тысячи раз, но все еще после многих исследований я не могу найти решение, и мне очень жаль об этом сообщении.Метка формы доступа из другого класса/пространства имен
Я хочу получить доступ к моей метке из класса в другом пространстве имен. Это образец кода, чтобы лучше понять, что я пытаюсь сделать:
public partial class Main : Form
{
public Main()
{
InitializeComponent();
}
}
//class in another namespace
class Servers
{
public void _SetlabelText()
{
Main.label1.Text = "New Text";
}
}
Как я должен сделать это правильный путь?
Это неясно. Является ли класс серверов ответственным за создание формы «Главная»? Или это «Основные» экземпляры экземпляров серверов? Что вызывает '_SetlabelText()'? –
В простых терминах вы не можете. Вы можете создать статический экземпляр формы и получить доступ к нему из родительского класса следующим образом: 'class Parent {public static Form myForm {get; задавать; } 'затем для доступа к нему из другого класса:' MyNameSpace.Parent.myForm.label1.Text = "некоторый текст"; 'или вы можете сделать то же, что и Джон, в ответ ниже, содержащий форму в нужном классе. – CalebB
_SetlabelText() находится в классе Servers, но он вызывается в основной форме. Я просто хотел переместить методы в другом классе, чтобы немного очистить беспорядок. – Maria