将图像绘制代码从WinForm移植到WPF

时间:2018-02-28 12:58:13

标签: c# wpf winforms reference system.drawing

我在WinForm应用程序中进行了一些原型设计,代码适用于我:

using System.Drawing;
using System.Drawing.Imaging;

.............

Image img0 = null;
img0 = Image.FromFile(filename);
PropertyItem[] propItems = img0.PropertyItems;

然而,当我将它复制到WPF应用程序时,我遇到了错误&引用之间的不兼容性。

我尝试添加.NET引用System.Drawing和System.Drawing.Imaging,但是与System.Windows.Control.Image存在冲突。 任何人都可以建议如何重写上面的代码,使其在WPF中运行。

1 个答案:

答案 0 :(得分:2)

每当你发现自己处理类名冲突时,你可以设置一个using来指定你在使用该类时所讨论的命名空间:

using System.Drawing;
using System.Drawing.Imaging;
using Image = System.Drawing.Image;

OR ,您可以在声明中明确定义命名空间:

System.Drawing.Image img0 = null;
img0 = System.Drawing.Image.FromFile(filename);

如果我知道我不会同时使用Image(System.Drawing和System.Windows.Controls)类,我个人更喜欢第一种方法

现在,如果您尝试以编程方式创建System.Windows.Controls.Image,请检查: Setting WPF image source in code