У меня есть 5 веб-форм, которые содержат те же элементы управления пользователя с разной функциональностью. Текущая система соответствует шаблону MVP. Все эти веб-формы унаследованы от одного базового класса (см. Следующий рисунок.). Теперь я должен отключить каждую форму отдельно для определенного условия, которое является общим для всех форм. Итак, я написал метод для одной из форм, чтобы отключить каждое поле в своих пользовательских элементах управления, и он отлично работает. Я могу повторно использовать этот метод для остальных веб-форм, поскольку все они содержат один и тот же набор пользовательских элементов управления. Решение для повторного использования метода дочернего класса в его дочерних элементах (ASP.NET/VB.NET)
В DisableControls() метод вызывает DisableInputs() метод каждого пользовательского элемента управления:
Это будет дублироваться в других классах веб-форм. Кто-нибудь может предложить подходящее решение для повторного использования этого метода?
Положите его в базовом классе, что все формы вытекают из ..? – user1429080
Спасибо .. Я отредактировал мое сообщение, чтобы объяснить код. Если я поставлю DisableControls() в BaseClass, тогда я должен передать пользовательские элементы управления в качестве параметров. В противном случае я не могу получить доступ к элементам управления пользователя в классе child из базового класса. Таким образом, он будет похож на метод DisableControls() в общем классе утилиты в качестве общего метода. Пожалуйста, поправьте меня, если я ошибаюсь. – Watz
Звуки о правильном, да. Если, однако, у вас есть 5 форм, у всех которых есть 'UserControl1' и' UserControl2', тогда у вас есть возможность поместить их в базовый класс. И тогда ваш метод имеет к ним доступ. В любом случае, не переусердствуйте, если не будет больше форм с той же структурой ... – user1429080