我正在开发一个 Silverlight 应用程序,我很难在我的应用程序中设置图像的相对路径。
这是我的项目目录的简要图片:
MyProject L images L mountain1.jpg L SpriteObjects L MountainFactory.cs L GameScreen.xaml
最初,我使用 GameScreen.xaml 中的图像画笔绘制了一个矩形。
<Rectangle Name="rec_bg" HorizontalAlignment="Left" VerticalAlignment="Top" Width="800" Height="600">
<Rectangle.Fill>
<ImageBrush x:Name="ib_bg" ImageSource="./images/mountain1.jpg" ></ImageBrush>
</Rectangle.Fill>
</Rectangle>
此 xaml 代码有效,即它可以毫无问题地在 images 文件夹中找到图像。
我想动态更改图像,我创建了一个名为 MountainFactory.cs 的类。在这个类中,我有一个带有这段代码的方法:
ImageBrush brush = new ImageBrush();
BitmapImage image = new BitmapImage(new Uri("./images/mountain" + level + ".jpg", UriKind.Relative));
brush.ImageSource = image;
此方法将返回应用于 rec_bg Rectangle 对象的图像画笔。但是,此代码找不到指定的图像。
有谁知道如何解决这个问题?谢谢。