Подтвердить что ты не робот

Можете ли вы определить ResourceDictionary.MergedDictionary вместе с другими (локальными) ресурсами в <Windows.Resources>?

Я хотел бы сослаться на MergedDictionary вместе с локально объявленными ресурсами в моих Windows.Resources. Однако я получаю эту ошибку:

"Все объекты, добавленные в IDictionary должен иметь атрибут Key или некоторый другой тип ключа, связанный с их".

Можно ли смешивать локальные ресурсы вместе с импортированными ресурсами в тех же Window.Resources?

XAML:

 <Window.Resources>
    <CollectionViewSource x:Key="cvsData" Source="{Binding Path=Data}">
        <CollectionViewSource.GroupDescriptions>
            <PropertyGroupDescription PropertyName="Country"/>
        </CollectionViewSource.GroupDescriptions>           
    </CollectionViewSource>

    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary x:Name="images" Source="pack://application:,,,/CoreWpfControls;component/Images.xaml"/>
        </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
</Window.Resources>

Спасибо Джереми

4b9b3361

Ответ 1

Да, это на самом деле очень просто. Вам просто нужно переместить дополнительные ресурсы внутри элемента ResourceDictionary.

<Window.Resources>
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="pack://application:,,,/CoreWpfControls;component/Images.xaml"/>
        </ResourceDictionary.MergedDictionaries>
        <CollectionViewSource x:Key="cvsData" Source="{Binding Path=Data}">
            <CollectionViewSource.GroupDescriptions>
                <PropertyGroupDescription PropertyName="Country"/>
            </CollectionViewSource.GroupDescriptions>           
        </CollectionViewSource>
    </ResourceDictionary>
</Window.Resources>