如何在不写程序集名称的情况下设置WPF图像源?
通常,WPF 图像源类似于
WpfApplication1;component/Untitled.png
但是如果我必须重命名程序集怎么办?我必须更改所有图像源吗?
Normally a WPF Image source is something like
WpfApplication1;component/Untitled.png
But what if I have to rename the assembly? I have to change all Image sources?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以使用相对路径:
(1)。相对于项目:
(2)。相对于定义此元素的 XAML 文件路径:
但是,如果图像位于外部程序集中,则必须指定程序集名称,否则 WPF 无法找到它。
You can use relative paths:
(1). Relative to the project:
(2). Relative to the XAML file path where this element is defined:
But, if the image is located in an external assembly then you have to specify the assembly name, otherwise there is no way WPF can find it.
我编写了一个图像管理器,它是一个自定义标记扩展,它已注册程序集,并且仅传递图像名称,并且它从注册程序集列表中查找图像。如果您不喜欢将程序集名称包含在外部程序集的 XAML 标记中,则可以执行类似的操作。
http://www.switchonthecode.com/tutorials/wpf-tutorial -fun-with-markup-extensions 是一个很好的起点。
I've written an image manager which is a custom markup extension, which has registered assemblies, and is just passed the image name, and it locates the image from the list of registered assemblies. You could do something similar if you don't like the idea of assembly names being in the XAML markup for external assemblies.
http://www.switchonthecode.com/tutorials/wpf-tutorial-fun-with-markup-extensions is a nice starting point.