0

我只是在做一个涉及路灯的基本练习项目,只需按一下按钮,灯光/图像就会改变颜色。在设计时我可以清楚地看到我的所有三个图像,但在运行时它们都不会出现。我在谷歌中搜索了地狱,我关注了三个不同的例子,但没有任何效果。

到目前为止,这就是我在我的三个图像的 xaml 代码中所拥有的

<Image HorizontalAlignment="Left" Height="299" Margin="25,10,0,0"                     VerticalAlignment="Top" Width="227" Source="images/Stop.png" Name="imgStop"/>
<Image HorizontalAlignment="Left" Height="299" Margin="25,10,0,0" VerticalAlignment="Top" Width="227" Source="images/Caution.png" Name="imgCaution"/>
<Image HorizontalAlignment="Left" Height="299" Margin="25,10,0,0" VerticalAlignment="Top" Width="227" Source="images/Caution.png" Name="imgGo"/>

现在这是我的 C# 代码

private void btnGreen_Click(object sender, RoutedEventArgs e)
    {
    Image myImage = new Image();
    myImage.Width = 227;
    BitmapImage myBitmapImage = new BitmapImage();
    myBitmapImage.BeginInit();
    myBitmapImage.UriSource = new Uri(@"G:\Users\Jason\Documents\C# Projects\WPF\stopLightDemo\stopLightDemo\images\Go.png");
    myBitmapImage.DecodePixelWidth = 227;
    myBitmapImage.EndInit();
    myImage.Source = myBitmapImage;
    }

    private void btnYellow_Click(object sender, RoutedEventArgs e)
    {

    }

    private void btnRed_Click(object sender, RoutedEventArgs e)
    {

    }

    private void btnClose_Click(object sender, RoutedEventArgs e)
    {
        this.Close();
    }
}
}

我可能做错了什么????

谢谢你!!!

4

2 回答 2

0

首先,当您的 XAML 使用相对图像 URI 时,images/Caution.png您必须确保适当的图像文件位于imagesVisual Studio 项目中命名的文件夹中,并且其生成操作设置为Resource.

其次,在您的btnGreen_Click处理程序中,您创建一个新的 Image 控件并设置其 Source 属性,但您从未将其添加到任何容器控件中。因此它不能变得可见。

于 2012-12-06T09:43:32.710 回答
0

如果您有来源的图片;

myBitmapImage.UriSource = new Uri(@"/stopLightDemo;component/images/Go.png",UriKind.Relative);
于 2012-12-06T03:12:37.560 回答