从未引用的程序集中的资源加载图像

时间:2009-03-25 21:52:51

标签: image resources silverlight-2.0

我有两个silverlight程序集,CaseManager.Applet和CaseManager.Applet.Sample。 Sample程序集引用了基本Applet程序集。样本组件具有嵌入的资源png图像。基础applet程序集有一个视图xaml,我希望以编程方式显示该图像。

在示例程序集中,我有一些代码可以像这样创建一个Uri:

var icon = new AppletIcon()
                   {
                     ImageUri = new Uri("CaseManager.Applet.Sample;component/images/guiness_2.png", UriKind.Relative),
                     ModuleType = GetType(),
                     Text = "Sample Module"
                   };

当我执行此代码时,ImageUri的所有属性都会抛出InvalidOperationException。我不知道为什么。有人有建议吗?

1 个答案:

答案 0 :(得分:0)

以下代码完成了这项工作:

var icon = new AppletIcon()
                   {
                     ImageUri = new Uri("/CaseManager.Applet.Sample;component/images/guiness_2.png", UriKind.Relative),
                     Module = this,
                     Text = "Sample Icon"
                   };

此处需要注意的事项:

  • Uri字符串开头的斜线。
  • 包含资源的程序集的简称。
  • the; component / section。

从那里开始,它基本上是项目内部到图像的路径。希望这有助于其他人。

对于它的价值,我错过了第一个斜线。