2013-09-11 3 views
-1

У меня есть простая форма окна и метка из другого класса. У меня есть цикл, и я хочу, чтобы каждый цикл цикла соответствовал метке текста в классе классов, но я не могу получить доступ это, я пытался сделать его общедоступным, но нечего делать.Изменить текст метки из другого класса

Итак, как я могу изменить текст меток из другого класса?

+0

Показать код. –

+1

В общем, даже если Label является общедоступным, он по-прежнему принадлежит классу Form, поэтому вам нужна ссылка. – DonBoitnott

+0

Сделайте это как * any * Класс Winforms делает это. Откуда вы знаете, что нажата кнопка? Как вы узнали, что текст TextBox изменился? Как ваш класс формы знает, что текст метки должен быть обновлен? То же самое, используйте событие. –

ответ

1

Передайте метку в качестве параметра для конструктора form2, затем сделайте то, что вы хотите на ней.

Что-то вроде этого:

#include"form2.h" 
class form1{ 

private: Label^ form1Labl; 

private: System::Void button1_Click{ 

form2^ form2Obj= gcnew form2(form1Labl); 

form2Obj->Show(); 

} 

}; 

и в классе Form2:

class form2{ 
private: Label^ lableObj; 

form2(Label^ l){ 
lableObj=l; 
} 

// rest of your code to change lableObj->Text propriety. 

}; 
Смежные вопросы