Как получить доступ к переменным в дочерней форме MDI (с лентой)?
Я пытаюсь получить доступ к переменным в дочерней форме. Я перехожу от мультиформной программы WinForm к MDI с лентой. Большая часть кода в дочерних формах одинакова, и я хотел бы кодировать столько же, сколько и родительская форма. Я могу получить доступ и изменить элементы управления в дочернем элементе, но не могу понять, как это сделать, или найти какие-либо подсказки о том, как получить доступ к переменным и изменить их.
Мои дочерние формы включают в себя список, который заполняется из списка< t>. При изменении данных для отображения я обычно меняю список< t> и устанавливаю источник данных ListBox так, чтобы он указывал на список.
Что я уже пробовал:
Я пытался сделать их общедоступными и пытался использовать аксессоры.
Обходной путь, который я использую, состоит в том, чтобы использовать дочерний элемент управления формой (метку) и изменить его. Затем дочернее свойство xxChanged элемента управления выполняет соответствующее действие. Единственное, что код все еще находится в ребенке.
Разве нет коллекции (как в элементах управления) переменных в дочерней форме, к которой я могу обратиться?
Graeme_Grant
Что вы пробовали до сих пор?
Dave Kreskowiak
Почему МДИ?? Он уже давно мертв.
Режим MDI в Windows Forms предназначался для нескольких окон редактора документов. Например, блокнот, который может открывать и редактировать несколько файлов одновременно. Если что-то подобное не то, что вы делаете, MDI-плохой выбор.
Если вы используете его, потому что у вас есть один и тот же код в нескольких дочерних формах, то решение состоит в том, чтобы иметь форму, содержащую этот общий код, и подкласс ваших конкретных дочерних форм из нее, а не перемещать код в вашу основную форму.
Dana Bell
Да, я действительно хочу МДИ. У меня будет несколько дочерних окон, каждое с разными данными, и я хотел бы, чтобы они были заперты в главном окне программ, а не разбросаны по рабочему столу. Вы можете увидеть мультиформную версию по адресу http://www.tylerhosting.com/hoot/help/.
Подклассы-это то, к чему я начинаю двигаться. Это будет утомительно, так как формы имеют различную степень сходства. Я предполагал, что смогу построить еще один уровень наследования.