Это потому, что вы использовали Image
в своих ресурсах.Image
является элементом управления и, как и любой другой элемент управления, может иметь только одного родителя.По умолчанию WPF пытается совместно использовать ресурсы для всех потребителей.Таким образом, последние MenuItem
«выигрывают» кастодиальные права на Image
, а другие MenuItem
даже не допускаются в выходные дни.
Чтобы исправить это, вы можете либо установить Image
чтобы не делиться:
<Image x:Shared="False" .../>
Или, что еще лучше, укажите свой ресурс изображения как соответствующий ImageSource
подкласс и поделитесь им:
<BitmapImage x:Key="ReportIconImage" Uri="/Resource/flag.png"/>
...
<Setter Property="Icon">
<Setter.Value>
<Image Source="{StaticResource ReportIconImage}"/>
</Setter.Value>
</Setter>