Произошла ошибка при поиске словаря ресурсов
У меня есть объединенный ресурсный словарь в App.xaml
Main assembly, который объединяет различные ресурсные словари из отдельных сборок: Common и PresentationLayer.
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/Common;component/Themes/Button.xaml"/>
<ResourceDictionary Source="/PresentationLayer;component/DataTemplates/AppointmentsDataTemplates.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
Во время выполнения стили в ресурсных словарях применяются к элементам управления правильно. Однако во время разработки стили не применяются, и Visual Studio 2012 продолжает давать следующую ошибку:
An error occurred while finding the resource dictionary "/Common;component/Themes/Button.xaml".
И предупреждение:
The resource "BannerButton" could not be resolved.
Я столкнулся с этим сообщением, но проблема сохраняется, несмотря на то, что Build Action установлен в Resource. Кроме того, у меня не было этой проблемы при работе в Visual Studio 2010 или Expression Blend 4. Основная сборка определенно содержит ссылку на общую сборку, и я не изменил URI пакета.
Ответы
Ответ 1
Это была известная проблема с Visual Studio 2012. См. эту ссылку в Microsoft Connect. После установки VS2012 Update 1 эта проблема решена для меня. Если вы считаете, что используете самую последнюю версию VS2012 и все еще испытываете эту проблему, убедитесь, что обновление было применено. Я думал, что обновился с помощью Центра обновления Windows, но потом обнаружил, что мне нужно было сказать VS2012, чтобы применить обновление. После того, как VS2012 сделал все, все было в порядке.
Ответ 2
Попробуйте то же самое в Window.Resources, убедитесь, что вы добавили пространство имен при использовании app.xaml и не забудьте изменить параметр build на страницу, где вам нужно использовать это приложение .xaml.
Ответ 3
Если вы используете Visual Studio 2017, попробуйте перезагрузить компьютер. Проблема может быть решена.