2010-03-09 3 views
7

C#에서 변환을 수행하고 다시 할 수있는 방법이 있습니까? System.Drawing.Image를 System.Windows.Controls.Image로 변환 하시겠습니까?

이 나는 ​​이미지 컨트롤이있는 WPF 응용 프로그램을 가지고있다. 그 컨트롤에있는 이미지를 SQL 데이터베이스에 저장하려고합니다. 내 엔티티 모델에서

내 데이터베이스에있는 사진 열의 데이터 유형은 byte[]이다. 그래서 System.Drawing.Image를 byte[]으로 변환하는 메소드를 발견했습니다. 그러나 System.Windows.Controls.Image에서 byte[]으로 변환하는 메서드를 찾지 못했습니다. 지금 위의 변환을 수행해야하는 이유

는 그래서입니다.

답변

3

음, 하나는 이미지입니다 하나는 이미지를 표시하는 컨트롤입니다, 그래서 둘 사이에 변환이 있다고 생각하지 않습니다. 하지만, 당신은 컨트롤의 근원을 설정할 수 있습니다. 이미지는 당신의 ... 드로잉입니다. 이미지. 이미지.

편집

이 당신이 무엇을해야 하는가 업데이트를 기반으로 - http://msdn.microsoft.com/en-us/library/ms233764%28VS.100%29.aspx

+0

그럴 수 없습니까 ... 어떤 생각입니까? –

+0

시나리오에 대해 더 자세히 설명해 주시겠습니까? 왜 이렇게해야하는지 이해하기가 힘듭니다. –

+0

은 자세한 내용 –

10

당신이 WPF 디코딩 할 수있는 파일을 나타내는 바이트 배열이있는 경우 (BMP, JPG, GIF, PNG, TIF

:

BitmapSource LoadImage(Byte[] imageData) 
{ 
    using (MemoryStream ms = new MemoryStream(imageData)) 
    { 
     var decoder = BitmapDecoder.Create(ms, 
      BitmapCreateOptions.PreservePixelFormat, BitmapCacheOption.OnLoad); 
     return decoder.Frames[0]; 
    } 
} 

을 마찬가지로, 다시 변환하려면 다음을 수행 할 수 있습니다) 특별하다고, 당신은이 다음과 같은 작업을 수행 할 수

+0

내 생명을 구했어. – joshua

관련 문제