Кажется, есть много вариантов этого вопроса, но ни один из них не касается моего сценария.
У меня есть UserControl, который используется в нескольких местах. Элемент управления имеет контекстное меню, но некоторые из его родителей также имеют контекстные меню. Родительские контекстные меню не привязаны к данным, т.е. они выглядят так:
<ContextMenu>
<MenuItem Header="Do Something" Click="DoSomethingMenuItem_Click" />
</ContextMenu>
Я могу пройти по логическому дереву и найти родительское контекстное меню, но не могу найти способ дублировать элементы MenuItem (я должен дублировать их, потому что им разрешен только один родитель).
Я думаю, что задаю очень похожий вопрос к этому: https://stackoverflow.com/questions/4177298/how-to-merge-wpf-contextmenus Но это не были ответы, поэтому я все еще ищу!
Пожалуйста, не предлагайте, чтобы данные связывали родительский элемент управления и использовали составные коллекции - слишком много мест, где это можно сделать!