WPF中如何将System.Drawing.Image复制给Image控件
时间: 2024-03-03 20:52:45 浏览: 258
在 WPF 中,可以使用 `System.Windows.Media.Imaging.BitmapImage` 类将 `System.Drawing.Image` 对象转换为 `System.Windows.Controls.Image` 控件可以使用的 `ImageSource` 对象。以下是一个示例代码:
```csharp
using System.Drawing;
using System.Windows.Media.Imaging;
// 将 System.Drawing.Image 对象复制给 Image 控件
public static void CopyImageToWpf(Image image, System.Windows.Controls.Image wpfImage)
{
// 将 System.Drawing.Image 对象转换为 BitmapImage 对象
Bitmap bitmap = new Bitmap(image);
BitmapImage bitmapImage = new BitmapImage();
bitmapImage.BeginInit();
MemoryStream memoryStream = new MemoryStream();
bitmap.Save(memoryStream, ImageFormat.Bmp);
memoryStream.Seek(0, SeekOrigin.Begin);
bitmapImage.StreamSource = memoryStream;
bitmapImage.EndInit();
// 将 BitmapImage 对象设置为 Image 控件的源
wpfImage.Source = bitmapImage;
}
```
在上面的代码中,我们首先将 `System.Drawing.Image` 对象转换为 `System.Windows.Media.Imaging.BitmapImage` 对象,然后将其设置为 `System.Windows.Controls.Image` 控件的源。需要注意的是,在将 `System.Drawing.Image` 转换为 `BitmapImage` 对象时,我们需要将其保存为 `MemoryStream` 对象,并将其设置为 `BitmapImage.StreamSource` 属性的值。
阅读全文