![]() |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
![]() ![]() |
![]() |
Unknown |
![]()
Сообщение
#1
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 104 Пол: Мужской Реальное имя: Евгений Репутация: ![]() ![]() ![]() |
Имеются два класса: один из них - стандартная форма с текстбоксом на ней. Вопрос: как из второго класса поменять текст текстбокса?
Код public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { Customer c = new Customer(); c.qwerty(); } public void prnt(string s1) { textBox1.Text = s1; } public static string s; } public class Customer { public void qwerty() { Form1.s = "asdf"; Form1.prnt(Form1.s); } } Как я понял, получить доступ к текстбоксу можно только из самого класса Form1, так? тогда необходимо написать public метод, позволяющий менять текстбокс. Но чтобы из другого класса обратиться к этому методу, нужно, чтобы метод был либо статичным, либо обращаться не к классу, а к экземпляру класса. Но статичный метод не захочет работать с нестатичным текстбоксом, а создавать экземпляр класса Form1 смысла нет. Как быть? -------------------- go ask Alice
|
Unknown |
![]()
Сообщение
#2
|
Гость ![]() |
Разобрался вроде...
Если кому интересно, надо было лишь передать текстбокс в качестве параметра методу второго класса: Код public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { Customer c = new Customer(); c.qwerty(textBox1); } } public class Customer { public void qwerty(TextBox tb) { tb.Text = "123"; } } |
![]() ![]() |
![]() |
Текстовая версия | 30.07.2025 2:43 |