2012-04-28 208 views
1

我正在創建一個WPF應用程序。我使用條形碼庫來生成每個員工ID的條形碼。但是,當我嘗試條碼圖像分配給圖像控制,然後它顯示以下錯誤:
不能隱式轉換類型爲System.Drawing.Image到system.windows.controls.image
這裏是我的代碼:不能將類型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"); 
    } 
} 

請幫我一把。

+0

[This answer](http://stackoverflow.com/a/8491098/1136211)可能會幫助你從System.Drawing.Image轉換爲[BitmapSource](http://msdn.microsoft.com/en-us /library/system.windows.media.imaging.bitmapsource.aspx),它將被分配給myimg。[來源](http://msdn.microsoft.com/zh-cn/library/system.windows.media.imagesource的.aspx)。 – Clemens 2012-04-28 17:36:28

回答

1

錯誤應該是非常明顯的,字段myImgimage2類型爲system.windows.controls.image,而該方法創建一個system.drawing.image

不知道該字段的用途很難說你應該做什麼,但如果你只是想要一個引用你需要限定類型或改變你的使用語句不包括控件名稱空間。

例如合格參考:

System.Drawing.Image myImg; 

如果image2造成的錯誤,你可能希望通過drawing.image轉換爲某種(這是基本WPF圖像類型)的ImageSource並將其分配給image2.Source代替。我相信如果你不知道如何做到這一點,那麼在某個地方有一個關於這個轉換的問題。

+0

有沒有什麼辦法可以指定myimg = Code128Rendering.MakeBarcodeImage(h,2,true);沒有任何錯誤? 這是我最終的目的。 – Azeem 2012-04-28 14:37:16

+0

@NidaSulheri:這個任務會實現什麼?那條線是否會導致錯誤?如圖所示,您是否具備資格? – 2012-04-28 14:38:02

+0

我正在創建員工卡創建應用程序,其中使用了第三方條碼生成庫GenCode128。如何將Code128Rendering.MakeBarcodeImage(h,2,true)轉換爲ImageSource?您的幫助將受到高度讚賞。是的它顯示轉換錯誤[myimg = Code128Rendering.MakeBarcodeImage(h,2,true);] – Azeem 2012-04-28 14:51:54

相關問題