Я создаю пользовательский элемент управления WPF, производный от TabControl. В ControlTemplate я использую ItemsControl для отображения списка, который привязан к шаблону (наблюдаемая коллекция типа FileMenuItem). Во время выполнения программы я получаю следующую ошибку в окне вывода:
ItemTemplate и ItemTemplateSelector
игнорируются для элементов уже
Тип контейнера ItemsControl;
Тип = 'FileMenuItem'
Тип FileMenuItem является производным от MenuItem. Если я изменю базовый класс на DependencyObject, код на самом деле выполняется и шаблон применяется (так что это вариант). Я погуглил ошибку и не смог найти в ней ничего, кто-нибудь сталкивался с этим при разработке пользовательских элементов управления? Несмотря на то, что у меня есть обходной путь, я хотел бы понять, что происходит, и я думаю, что использование MenuItem в качестве базового класса является более чистой реализацией.
Я могу опубликовать больше кода, если это поможет. Спасибо!