【问题标题】:cannot implicitly convert type system.drawing.image to system.windows.controls.image无法将类型 system.drawing.image 隐式转换为 system.windows.controls.image
【发布时间】:2012-05-09 00:15:16
【问题描述】:

我正在创建一个 WPF 应用程序。我使用条形码库生成每个员工 ID 的条形码。但是当我尝试将条形码图像分配给 Image Control 时,它会显示以下错误:
无法将类型 system.drawing.image 隐式转换为 system.windows.controls.image
这是我的代码:

public partial class Card : Window
{
    private PrintDialog dialog;
    Image myimg;

    public Card(String a, String b, String c, String d, String e, String f, String g, String h, String i)
    {
        InitializeComponent();
        myimg = Code128Rendering.MakeBarcodeImage(h, 2, true);
        image2 = myimg;
    }

    private void button1_Click(object sender, RoutedEventArgs e)
    {
        dialog = new PrintDialog();
        dialog.PrintVisual(canvas1, "Employee Card");
    }
}

请帮帮我。

【问题讨论】:

标签: c# .net wpf barcode


【解决方案1】:

错误应该很明显,字段myImg 或image2 的类型为system.windows.controls.image,而该方法创建了system.drawing.image。

如果不知道该字段的用途,很难说您应该做什么,但如果您只是想要一个引用,您需要限定类型或更改您的 using 语句以不包含控件命名空间。

例如供合格参考:

System.Drawing.Image myImg;

如果image2 导致错误,您可能希望将drawing.image 转换为某种ImageSource(它是基本的WPF 图像类型)并将其分配给image2.Source。如果您不知道该怎么做,我确信在某处存在关于 SO 转换的问题。

【讨论】:

  • 有什么方法可以分配 myimg = Code128Rendering.MakeBarcodeImage(h, 2, true);没有任何错误?这是我的最终目的。
  • @NidaSulheri:这个任务会实现什么?那条线是否导致错误?如图所示,您是否对该字段进行了限定?
  • 我正在创建员工卡创建应用程序,其中我使用了第三方条形码生成库 GenCode128。如何将 Code128Rendering.MakeBarcodeImage(h, 2, true) 转换为 ImageSource?您的帮助将不胜感激。是的,它在转换时显示错误 [myimg = Code128Rendering.MakeBarcodeImage(h, 2, true);]
  • @NidaSulheri:正如我在回答中所说,环顾四周。
  • 您能否提供一些与此转换相关的链接?我在 SO 上找不到这个话题。
猜你喜欢
  • 2011-01-25
  • 1970-01-01
  • 1970-01-01
  • 2020-07-03
  • 1970-01-01
  • 2019-05-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多