C# 如何";转换系统.windows.control.image“;至;“系统.图纸.图像”;在c中#

C# 如何";转换系统.windows.control.image“;至;“系统.图纸.图像”;在c中#,c#,asp.net,image,C#,Asp.net,Image,你好,朋友们,我想“转换一个系统。windows。控件。图像”到“系统。绘图。图像”,但我不能这样做。我使用下面的代码来实现这一点 var e = (MouseButtonEventArgs)sender; var device = e.MouseDevice.DirectlyOver; System.Windows.Controls.Image img = (System.Windows.Controls.Image)device; 我有“img”,即“system.windows.cont

你好,朋友们,我想“转换一个系统。windows。控件。图像”到“系统。绘图。图像”,但我不能这样做。我使用下面的代码来实现这一点

var e = (MouseButtonEventArgs)sender;
var device = e.MouseDevice.DirectlyOver;
System.Windows.Controls.Image img = (System.Windows.Controls.Image)device;
我有“img”,即“system.windows.control.image”类型,我需要将其转换为位图或绘图类型。

试试这个

在此代码中使用img变量

MemoryStream ms = new MemoryStream(); 
System.Windows.Media.Imaging.BmpBitmapEncoder bbe = new BmpBitmapEncoder();
bbe.Frames.Add(BitmapFrame.Create(new Uri(img.Source.ToString(),UriKind.RelativeOrAbsolute)));

bbe.Save(ms); 
System.Drawing.Image img2 = System.Drawing.Image.FromStream(ms); 
button1.Image = img2;
从字节[]转换为图像

 MemoryStream ms = new MemoryStream(imageByte);
    Image image = Image.FromStream(ms);

它可能会帮助您..

位图图像=img.image@Dexter img没有图像类型的属性,因为类型为windows.controls.Images为什么需要
System.Drawing.Bitmap
?除了与旧代码的互操作外,大多数其他操作都可以在不进行转换的情况下完成。我只想将其转换为system.drawing.image@Mitchasuming您所指的是显示的图像(源代码属性),这将是的副本,但您也可以调用
CopyPixels
()并将结果作为原始像素数据传递给GDI。Agarwal我们没有图像源,我们正在拍摄存储在数据库中的图像,即以字节的形式,实际上我正在从绑定到列表框的数据库中拍摄图像,当我单击任何图像时,我需要该图像的字节。因此,Uri king将在您的案例中生成错误Agarwal从我得到的位置“imageByte”是我没有的,我有图像缓冲区,所以我现在如何读取图像缓冲区?你得到的是图像路径还是什么?没有图像路径没有字节,直接图像最初使用字节从数据库绑定,现在想读取相同的字节