2017-04-15 7 views
0

난에 PictureBox가 picture 내가이있는 PictureBox의 이미지를 얻을 BitmapSource는가져 오기 BitmapSource는 C#에서 PictureBox에서

BitmapSource myPic; 
    myPic = picture.Image; 

로 저장하려면라고해야하지만 난이 오류를 얻을 :

심각도 코드 설명 프로젝트 파일 줄 Suppression 상태 오류 CS0029 'System.Drawing.Image'형식을 'System.Windows.Media.Imaging.BitmapSource'로 암시 적으로 변환 할 수 없음

답변

1

사용 :

public BitmapSource ImageToBitmapSource(System.Drawing.Image image) 
{ 
     var bitmap = new System.Drawing.Bitmap(image); 

     var bitSrc =BitmapToBitmapSource(bitmap); 

     bitmap.Dispose(); 
     bitmap = null; 

     return bitSrc; 
} 

public BitmapSource BitmapToBitmapSource(System.Drawing.Bitmap source) 
{ 
     BitmapSource bitSrc = null; 

     var hBitmap = source.GetHbitmap(); 

     try 
     { 
      bitSrc = System.Windows.Interop.Imaging.CreateBitmapSourceFromHBitmap(
       hBitmap, 
       IntPtr.Zero, 
       Int32Rect.Empty, 
       BitmapSizeOptions.FromEmptyOptions()); 
     } 
     catch (Win32Exception) 
     { 
      bitSrc = null; 
     } 

     return bitSrc; 
}