Почему вы пытаетесь закодировать событие Loaded в XAML?
Если вы наследуетесь от CustomerMaintenanceControlBase, то этот базовый класс должен иметь возможность подключаться сам.
Это может быть не так весело, но требование о том, чтобы событие проводилось в XAML, отрицает цель помещения его в базовый класс, если только оно не является «необязательным». Я предполагаю, что ваш метод содержит логику, которая должна запускаться каждый раз, когда производные элементы управления загружаются, так почему бы дать разработчикам возможность генерировать проблемы, забыв событие загрузки? Почему бы просто не поместить это в свой конструктор в базовом классе:
protected CustomerMaintenanceControlBase()
{
Loaded += CustomerMaintenanceControlBase_Loaded;
}
И тогда он подключится к любому производному элементу управления без дополнительных усилий со стороны разработчика?