Если вы используете файл словаря ресурсов, вы должны обращаться к файлам, используя Pack URI Scheme .
Например:
В следующем примере показан URI пакета для файла ресурсов XAML, который
находится в корне папки проекта указанной сборки.
pack://application:,,,/ReferencedAssembly;component/ResourceFile.xaml
В следующем примере показан URI пакета для файла ресурсов XAML, который
находится в подпапке папки проекта указанной сборки.
pack://application:,,,/ReferencedAssembly;component/Subfolder/ResourceFile.xaml
В следующем примере показан URI пакета для файла ресурсов XAML, который
находится в корневой папке указанной, зависящей от версии
папка проекта сборки.
pack://application:,,,/ReferencedAssembly;v1.0.0.1;component/ResourceFile.xaml
Если файл находится в выходной папке, вы можете использовать сайт происхождения для ссылки на него:
В следующем примере показан URI пакета для сайта происхождения XAML
файл, хранящийся в том месте, откуда находится исполняемая сборка
запущен.
pack://siteoforigin:,,,/SiteOfOriginFile.xaml
В следующем примере показан URI пакета для сайта происхождения XAML
файл, хранящийся в подпапке относительно места, из которого
исполняемая сборка приложения запущена.
pack://siteoforigin:,,,/Subfolder/SiteOfOriginFile.xaml
Как пример:
<UserControl.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<!--A resource dictionary in the output folder in the Assets folder-->
<ResourceDictionary Source="pack://siteoforigin:,,,/Assets/OpenIconsDictionary.xaml"/>
<!--A resource dictionary packed in the Gui dll-->
<ResourceDictionary Source="pack://application:,,,/Gui;component/Assets/PackedIconsDictionary.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</UserControl.Resources>
<!--In the output folder /Assets/OpenIconsDictionary.xaml (Build Action: Embedded Resource, Copy always)-->
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<BitmapImage x:Key="Icon"
UriSource="pack://siteoforigin:,,,/Images/image.png"/>
</ResourceDictionary>
<!--In Gui.dll in the folder /Assets/PackedIconsDictionary.xaml (Build Action: Page, Do not copy)-->
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<BitmapImage x:Key="Icon"
UriSource="pack://siteoforigin:,,,/Images/image.png"/>
</ResourceDictionary>