开发者

Why does the Image element give me a design-time error with "add as link"ed images?

开发者 https://www.devze.com 2022-12-22 07:52 出处:网络
I need to display an image, which I\'ve done without prob开发者_如何学Golems before, but today I decided to be tricky and use \"add as link\" instead.Well, now I get:

I need to display an image, which I've done without prob开发者_如何学Golems before, but today I decided to be tricky and use "add as link" instead. Well, now I get:

The file Images/hello.png is not part of the project or its 'Build Action' property is not set to 'Resource'.

Wait... its Build Action is set to Resource. I've seen a Silverlight solution that involves the usage of Merged Dictionaries to share files between Silverlight and WPF projects, but it's not clear to me that this would even apply to my WPF + Image issue.

Has anyone solved this problem before? I could make copies of all of the images, but that seems a little silly if I have a shared repository with clip art and the like.


Dave,

I've just tried to add image as a link to plain WPF application. Build action is "Resource" (don't confuse with "Embedded Resource"). I've added it to the root, and refer to it as <Image Source="/file_name.jpg"/> - all works fine.

The message you have is it compile or runtime? If it's a runtime, how do you refer to the image? Do you see it in Reflector, when you open your assembly (it should be under Resources folder)?


I have images in one assembly which I want to share into another. I've used Add as Link in my second assembly. In the project where the actual image files are located they are in a Resources\Images folder. In the project which links to those files the links are also in a Resources\Images folder. At runtime a XamlParseException claiming "cannot locate resource" is thrown.

My xaml which is referencing the image is in a UserControls folder.

In the project which actually contains the images the path ..\Resources\Images\Blah.png works fine as expected.

Opening the DLLs in Reflector makes it obvious that in the assembly with the linked images holds the images at the root level - the compiler is not respecting the folder location. So in the project with the linked files I have to use ..\Blah.png to find the resource.

Surely a bug in the compiler?

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号