У меня есть решение VS2010 с 5 проектами. Два из этих проектов называются:
MyResources
Применение
Проект Application содержит все представления и модели представления для запуска приложения, а проект Resources содержит все изображения, словари ресурсов и т. Д. Для создания тем и оформления.
То, как у меня настроены изображения в Ресурсах, для их действия по сборке установлено значение Контент, а для параметра Копирование - Копировать всегда. В моем проекте приложения я ссылаюсь на эти файлы, используя URI пакета. Пример:
"pack://siteoforigin:,,,/Themes/DefaultTheme/BackgroundImage.png"
Это прекрасно работает для меня. Папка тем и все ее подпапки правильно скопированы в нужную папку, так как я использую siteoforigin: //.
Однако это нарушает смешиваемость. Когда я загружаю проект в Blend 4, я получаю ошибки.
Если я использую siteoforigin, Blend пытается загрузить изображения из исполняемой папки blend.exe (в этом случае C: \ Program Files \ Microsoft Expression \ Blend 4 Beta \ Themes \ Default_Theme \ BackgroundImage.png ")
Если я изменю URI пакета на следующее:
pack://application:,,,/IQ.IQKiosk.Resources;component/Themes/DefaultTheme/BackgroundImage.png
Он пытается найти изображение в "themes / default_theme / backgroundimage.png"
Если я попытаюсь:
/MyResources;component/Themes/DefaultTheme/BackgroundImage.png
Он пытается найти изображение в "C: \ MyResources; component \ Themes \ DefaultTheme \ BackgroundImage.png"
Если я попытаюсь:
/Themes/DefaultTheme/BackgroundImage.png
Он пытается найти изображение в "C: \ Themes \ DefaultTheme \ BackgroundImage.png".
Так что теперь я застрял. Я не уверен, как ссылаться на мои изображения, не вставляя их в проект ресурса, и я не могу жестко закодировать каталог, потому что мои другие коллеги также имеют проект в разных папках.
Я попытался придумать способ получить правильный URI в правильном расположении файлов (по сравнению с файлом .sln было бы здорово) или сделать так, чтобы файлы копировались туда, где blend компилирует и выполняет проект. Увы, я не могу понять, как.
Кто-нибудь знает правильный способ загрузки этих изображений?