반응형
WPF의 이미지 컨트롤을 사용하여 시스템을 표시합니다.그림그리기.비트맵
인메모리를 할당하려면 어떻게 해야 합니까?Bitmap
에 반대하는.Image
WPF의 제어?
http://khason.net/blog/how-to-use-systemdrawingbitmap-hbitmap-in-wpf/ 에 따르면
[DllImport("gdi32")]
static extern int DeleteObject(IntPtr o);
public static BitmapSource loadBitmap(System.Drawing.Bitmap source)
{
IntPtr ip = source.GetHbitmap();
BitmapSource bs = null;
try
{
bs = System.Windows.Interop.Imaging.CreateBitmapSourceFromHBitmap(ip,
IntPtr.Zero, Int32Rect.Empty,
System.Windows.Media.Imaging.BitmapSizeOptions.FromEmptyOptions());
}
finally
{
DeleteObject(ip);
}
return bs;
}
시스템을 가져옵니다.그림그리기.WPF에서 이미지 컨트롤의 이미지 소스로 사용할 수 있는 비트맵 소스(Windows Based에서)로 변환합니다.
image1.Source = YourUtilClass.loadBitmap(SomeBitmap);
이미지의 Source 속성을 사용할 수 있습니다.이 코드를 사용해 보십시오...
ImageSource imageSource = new BitmapImage(new Uri("C:\\FileName.gif"));
image1.Source = imageSource;
디스크 파일은 쉽지만 메모리의 비트맵은 어렵습니다.
System.Drawing.Bitmap bmp;
Image image;
...
MemoryStream ms = new MemoryStream();
bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
ms.Position = 0;
BitmapImage bi = new BitmapImage();
bi.BeginInit();
bi.StreamSource = ms;
bi.EndInit();
image.Source = bi;
나는 프로그램을 썼습니다.wpf
데이터베이스를 사용하여 이미지를 표시합니다. 다음은 제 코드입니다.
SqlConnection con = new SqlConnection(@"Data Source=HITMAN-PC\MYSQL;
Initial Catalog=Payam;
Integrated Security=True");
SqlDataAdapter da = new SqlDataAdapter("select * from news", con);
DataTable dt = new DataTable();
da.Fill(dt);
string adress = dt.Rows[i]["ImgLink"].ToString();
ImageSource imgsr = new BitmapImage(new Uri(adress));
PnlImg.Source = imgsr;
언급URL : https://stackoverflow.com/questions/1118496/using-image-control-in-wpf-to-display-system-drawing-bitmap
반응형
'programing' 카테고리의 다른 글
현재 메소드를 호출한 메소드를 어떻게 찾을 수 있습니까? (0) | 2023.05.01 |
---|---|
MongoDB - 컬렉션의 모든 레코드를 업데이트하는 가장 빠른 방법은 무엇입니까? (0) | 2023.05.01 |
Azure 가상 시스템의 도메인 컨트롤러로 사용되는 Azure Active Directory (0) | 2023.05.01 |
Android Studio 프로젝트 구조(v.s. Eclipse 프로젝트 구조) (0) | 2023.05.01 |
Python 2.7에서 인쇄된 괄호가 자발적인 이유는 무엇입니까? (0) | 2023.05.01 |