I have a WPF project. If I store image in {ProjectRoot}\Images\image.png, and compile it as Resource then I can access it from a xaml (this xaml is located at Root) as BitmapImage by BitmapImage UriSource="Images/image.png"
. But if I move the xaml to another folder, say {ProjectRoot}\Xamls, now I have to use BitmapImage UriSource="../Images/image.png"
. Is there a way to specify an absolute project path, so that I can refer to them with the same path regardless of the location of the xaml?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
You can use this syntax both to reference by an absolute path inside the same project, or reference files in other projects:
UriSource="/MyAssemblyName;component/Images/image.png"
Here "MyAssemblyName" is the project/dll/exe name and "component" indicates the project root.
回答2:
Take a look at Pack URIs in WPF