c# WinForms обращается к экземпляру из другого класса

Я столкнулся с этой проблемой (я сделаю это коротким и легким). В form1 мне нужно создать экземпляр формы входа в систему и иметь доступ к нему в классе abc и использовать его (логин). метод. Однако, похоже, быть недоступным.

Надеюсь, я сказал все уместное в понятной.

заранее спасибо


person Releis    schedule 11.06.2012    source источник


Ответы (2)


По сути, чтобы сделать именно то, что вы просите, вам нужно предоставить экземпляр Login для abc, например, передав его через конструктор abc.

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

Я предлагаю взглянуть на шаблон MVC. Хотя WPF, Silverlight и ASP.Net MVC обеспечивают мощную поддержку этого шаблона, вы, безусловно, можете применить его в for-winforms">сценарий WinForms.

Использование такого шаблона, как MVC, значительно упростит развитие и поддержку вашего кода с течением времени.

person Eric J.    schedule 11.06.2012
comment
Большое спасибо! Логику понял и заработал. - person Releis; 11.06.2012

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

person Jeff Watkins    schedule 11.06.2012