如何访问内XAML的资源图像中的用户控件库?(How can I access a resource

2019-10-19 05:59发布

我正在写WPF用户控件库时遇到与我试图通过一些XAML访问资源的图像问题。 只是为了好玩,图像显示为预期在设计时,只有失败的运行时间。

我试过生成操作设置为“无”,“内容”,“资源”和“嵌入的资源”,但我不断收到以下神秘异常:

System.Windows.Baml2006.TypeConverterMarkupExtension“上提供价值'引发了异常。” 行号“18”和线位置“6”。

综观内部异常,这似乎是与包URI的一个问题。 当我尝试:

<ImageBrush x:Key="mybrush" ImageSource="pack://application:,,,/Resources/an image.png" />

我得到:

Assembly.GetEntryAssembly()返回null。

OK,所以这可能是因为我的库现在正在从另一个组件内调用。 但是,当我跟随的建议和尝试:

<ImageBrush x:Key="mybrush" ImageSource="pack://application:,,,my_assembly;component;/Resources/an image.png" />

我得到的内部异常:

“该URI前缀不被认可。”

为了增加乐趣,我有我没有问题,通过实际的C#代码访问(即不通过XAML)另一个图像资源。

我究竟做错了什么? 觉得这将是非常简单的,但我此刻的头桌组。

Answer 1:

更改到的ImageSource

ImageSource="pack://application:,,,/my_assembly;component/Resources/your_image.p‌​ng"


文章来源: How can I access a resource image within XAML in a user control library?