如果您正在使用资源字典文件,则必须使用
Pack URI Scheme来引用这些文件。
例如:
以下示例显示了位于引用程序集项目文件夹根目录中的XAML资源文件的封装URI。
pack://application:,,,/ReferencedAssembly
以下示例显示了位于引用程序集项目文件夹的子文件夹中的XAML资源文件的打包URI。
pack://application:,,,/ReferencedAssembly
以下示例显示了一个XAML资源文件的打包URI,该文件位于引用的特定版本程序集项目文件夹的根文件夹中。
pack://application:,,,/ReferencedAssembly
如果文件位于输出文件夹中,您可以使用源站点来引用它:
以下示例显示了XAML源站点的打包URI,存储在可执行程序集启动的位置。
pack://siteoforigin:,,,/SiteOfOriginFile.xaml
以下示例显示了一个XAML网站源文件的打包URI,该文件存储在相对于启动应用程序的可执行程序集所在位置的子文件夹中。
pack://siteoforigin:,,,/Subfolder/SiteOfOriginFile.xaml
作为一个例子:
<UserControl.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://siteoforigin:,,,/Assets/OpenIconsDictionary.xaml"/>
<ResourceDictionary Source="pack://application:,,,/Gui;component/Assets/PackedIconsDictionary.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</UserControl.Resources>
<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>
<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>