Форум программистов, компьютерный форум, киберфорум
Наши страницы

C# для начинающих

Войти
Регистрация
Восстановить пароль
 
skilllab
125 / 122 / 23
Регистрация: 03.02.2011
Сообщений: 1,533
Завершенные тесты: 1
#1

.NET 4.x Обращение к контролам другой формы - C#

12.04.2013, 10:34. Просмотров 726. Ответов 6
Метки нет (Все метки)

Почему в VB.NET такая конструкция допустима:
vb.net
1
2
3
4
        Dim instance As New Form2()
        instance.Show()
        Dim TTT = instance.Label1.Text
        instance.Label1.Text = "&&&&&&&&&"
А в C# приходится пользоваться делегатами и статичными классами?

В С++ тоже можно просто получить указатель на чужую форму и обращаться к контролам напрямую.
Почему такой подход явно закрыли?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.04.2013, 10:34
Здравствуйте! Я подобрал для вас темы с ответами на вопрос .NET 4.x Обращение к контролам другой формы (C#):

Обращение к контролам из обработчика - C#
Приветствую вас. Такой вопрос: Есть программа, в ней tabControl. Программно создаю там вкладку, текстбокс и листбокс. Затем создаю...

Обращение к контролам по индексу - C#
Здравствуйте форумчане, вопрос в следующем, есть контролл, например текстбокс, вот я его создаю, задаю ему имя, размещаю, устанавливаю. ...

Обращение к компоненту другой формы - C#
в общем есть форма Form1, из этой формы хочу обратится к компоненту textBox1 формы Form2......пишу код: Form2 fr = new Form2(); ...

обращение к списку List<Point> из другой формы - C#
Подскажите пожалуйста где можно про это прочесть?

Как Получить доступ к контролам формы не из основного класса - C#
Я создаю стандартную форму на которой у меня есть Textbox,объявляю класс connect,пробую получить доступ к моему текстбоксу,но его нет в...

Обращение к другой программе по сети - C#
Здравствуйте. Не могу понять как мне сделать общение по сети между 2-мя программами. Делаю 2 сервера и они должны немного общаться между...

6
turbanoff
Модератор
Эксперт Java
3973 / 3708 / 460
Регистрация: 18.05.2010
Сообщений: 9,286
Записей в блоге: 11
Завершенные тесты: 1
12.04.2013, 14:18 #2
В c#, разумеется такое тоже возможно:
C#
1
2
3
4
Form2 instance = new Form2();
instance.Show();
string TTT = instance.Label1.Text;
instance.Label1.Text = "&&&&&&&&&";
0
skilllab
125 / 122 / 23
Регистрация: 03.02.2011
Сообщений: 1,533
Завершенные тесты: 1
12.04.2013, 14:28  [ТС] #3
"WindowsFormsApplication1.Form2" не содержит определения для "Label1"
0
turbanoff
Модератор
Эксперт Java
3973 / 3708 / 460
Регистрация: 18.05.2010
Сообщений: 9,286
Записей в блоге: 11
Завершенные тесты: 1
12.04.2013, 15:22 #4
Поменяйте модификатор у Label1 на public.
1
skilllab
125 / 122 / 23
Регистрация: 03.02.2011
Сообщений: 1,533
Завершенные тесты: 1
12.04.2013, 15:53  [ТС] #5
Ага, элементарщина. Только вот всёравно, зачем все эти делегаты?
Безопасный код?

Добавлено через 16 минут
И почему в VB.NET контролы по-умолчанию имеют Friendly, а в C# нет? Какой-то скрытый смысл?

Добавлено через 6 минут
Это тот же NET, но в васике обращение к контролам считается безопасным а в шарпе нет)))
0
turbanoff
Модератор
Эксперт Java
3973 / 3708 / 460
Регистрация: 18.05.2010
Сообщений: 9,286
Записей в блоге: 11
Завершенные тесты: 1
12.04.2013, 17:18 #6
Цитата Сообщение от skilllab Посмотреть сообщение
зачем все эти делегаты?
Про какие делегаты речь?

Цитата Сообщение от skilllab Посмотреть сообщение
И почему в VB.NET контролы по-умолчанию имеют Friendly, а в C# нет? Какой-то скрытый смысл?
Скорее всего в VB.NET оставили так потому что хотели сохранить совместимость со старым VB
А в новом языке C# решили сделать правильно.
0
Predatore
24 / 19 / 5
Регистрация: 25.10.2009
Сообщений: 228
25.04.2013, 14:41 #7
Цитата Сообщение от skilllab Посмотреть сообщение
Это тот же NET, но в васике обращение к контролам считается безопасным а в шарпе нет)))
Потому что Васька, он Васька и есть. Как правильно заметил turbanoff, просто так исторически сложилось.
А на самом же деле VB в данном случае противоречит одному из принципов ООП, а именно - инкапсуляции.
0
25.04.2013, 14:41
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.04.2013, 14:41
Привет! Вот еще темы с ответами:

Настройка элементов управления формы из другой формы - C#
Всем привет , вот столкнулся с проблемой передачи данных между формами . у меня есть родительская форма (frmContainer) и две...

Обращение к элементу формы из класса - C#
Снова доброго времени суток. Появилась потребность обратится к элементу checkBox1 , который присутствует на форме из моего класса . ...

Обращение к объекту формы из класса - C#
Здравствуйте! Подскажите пожалуйста как поступить, если нужно обратиться из метода класса, который создан отдельным файлом, к объекту...

WinApi функции. обращение к компонентам формы. - C#
В общем недавно поднималась такая тема: на первой форме находилась кнопка и текстбокс. при нажатии на кнопку, открывался экземпляр второй...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru