如何在WPF中通过单击按钮更新/替换图像
本文关键字:更新 按钮 替换 图像 单击 WPF | 更新日期: 2023-09-27 17:54:13
所以我有一个图像,当用户单击一个按钮时,它会将其更改为一个新项目。但是,每当用户单击其中一个按钮时,窗口将变为空白。我怎样才能让它工作?谢谢你。
private void Next_Click(object sender, RoutedEventArgs e)
{
if (imageNumber > 6)
{
imageNumber = 1;
}
imageNumber++;
string sUri = string.Format("@/Resources/{0}", imageSource[imageNumber]);
Uri src = new Uri(sUri, UriKind.Relative);
var bmp = new BitmapImage(src);
img.Source = bmp;
}
xaml
<Image x:Name="img">
<Image.Source>
<BitmapImage UriSource="Resources/BlackJackTut-1.jpg" />
</Image.Source>
</Image>
在WPF应用程序中,您也可以使用"pack://application:,,,/resources/imagename.png"
。
这种方式称为打包URI。这是静态的,但是使用这些代码你可以做同样的事情,甚至使用资源;)
把图片放到资源中。
private BitmapImage ConvertBitmapToBitmapImage(System.Drawing.Bitmap bitmap)
{
MemoryStream memoryStream = new MemoryStream();
bitmap.Save(memoryStream, System.Drawing.Imaging.ImageFormat.Png);
BitmapImage bitmapImage = new BitmapImage();
bitmapImage.BeginInit();
bitmapImage.StreamSource = new MemoryStream(memoryStream.ToArray());
bitmapImage.EndInit();
return bitmapImage;
}
,然后使用:
private void btn_Click(object sender, RoutedEventArgs e)
{
this.Img.Source = ConvertBitmapToBitmapImage(Properties.Resources.iamge1);
}
在主窗口外创建一个图像。
:
myImageOnScreen.Source = myImageOffScreen.Source;