У меня есть абстрактный базовый класс, который наследуется от UserControl
и который затем используется для получения ряда классов.
Проблема, с которой я столкнулся, заключается в том, чтобы элегантно убедиться, что сгенерированная функция InitializeComponent()
вызывается для каждого слоя класса.
Таким образом, (абстрактный) базовый класс имеет ряд элементов управления, которые будут общими для всех детей. При создании экземпляра дочернего класса сначала вызывается базовый конструктор, но есть ли способ элегантно вызвать производный InitializeComponent()
без необходимости эффективно создавать один и тот же конструктор для каждого производного класса
public DerivedClass() {
InitializeComponent();
}
Мне интересно, есть ли более эффективный способ, чем повторяться в каждом классе Derived?
В сущности, я бы хотел, чтобы (абстрактный) базовый класс мог вызывать
Derived.InitializeComponent();
В конце концов, когда он находится в базовом конструкторе (в отладке), он знает, что это производный экземпляр ...