2013-03-19 114 views
0

我想从后面的代码中包含一个图像到我的项目中,以便允许我将图像设置为矩形的填充! 我以这种方式插入图片:在一个项目中包含图像

<Rectangle Grid.Column="2" Grid.Row="2" Margin="4,4,4,4" Style="{DynamicResource rectangle_style}" > 
    <Rectangle.Fill> 
     <ImageBrush ImageSource="image.jpg" Stretch="UniformToFill"/> 
    </Rectangle.Fill> 
</Rectangle> 

为了创建这个背景图片我必须包括一个项目,右击文件,图像文件和设置“包括在一个项目”。 您可以帮我在运行时包含来自后台代码的图像,因为我将有必要从文件夹中的大多数文件设置图像!

回答

0

一种方法是执行“包含在项目中”或“添加现有项目”,然后在属性下将“复制本地”设置为始终。在这种情况下

注意,你需要获得应用程序文件夹路径

<ImageBrush ImageSource="c:\[YourPath]\[YourProject]\someImg.png" Stretch="UniformToFill" /> 

或结合使用为您提供当前应用程序路径的方法。 (做一个这样的搜索,因为有很多这样的问题在SO上回答)。

这意味着,当您部署应用程序时,您必须使用它部署图像(它将以bin文件夹的形式提供给您的任何路径结构)。

另一种方法是执行相同操作,并将Build Action设置为Resource - 这将使您的应用程序与DLL中的图像一起编译。缺点是DLL会更大,但在部署时,您不必记得复制文件。

访问resource按名称(无前斜线)

<ImageBrush ImageSource="someImg.png" Stretch="UniformToFill" /> 

希望它能帮助!

相关问题