Làm cách nào để gán một đối tượng trong bộ nhớ Bitmap
cho điều khiển Image
trong WPF?Sử dụng điều khiển Hình ảnh trong WPF để hiển thị System.Drawing.Bitmap
Trả lời
Bạn có thể sử dụng thuộc tính Nguồn của hình ảnh. Hãy thử mã này ...
ImageSource imageSource = new BitmapImage(new Uri("C:\\FileName.gif"));
image1.Source = imageSource;
Ông đã có bitmap trong bộ nhớ, vì vậy ông không thể sử dụng một uri –
Tôi có đối tượng Bitmap, actully nó được tạo ra từ một thiết bị quét, vì vậy tôi không thể tham khảo bất kỳ vị trí –
tôi có một phương thức trả về hình ảnh bitmap. làm thế nào để thiết lập nó như là nguồn –
Theo 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;
}
Nó được System.Drawing.Bitmap (từ WindowsBased) và chuyển nó thành BitmapSource, có thể được thực sự sử dụng như nguồn hình ảnh để kiểm soát hình ảnh của bạn trong WPF.
image1.Source = YourUtilClass.loadBitmap(SomeBitmap);
Thx Lars, nhưng tôi đã làm đơn giản hơn nhiều, BitmapImage bmpi = new BitmapImage(); bmpi.BeginInit(); bmpi.StreamSource = new MemoryStream (ByteArray); bmpi.EndInit(); image1.Source = bmpi; –
Tuyệt vời. Bạn có thể thêm sollution của bạn như là một câu trả lời cho câu hỏi của riêng bạn. –
Tôi không thấy phương thức BitmapImage.StreamSource. Prashant, bạn đã gõ gì sai sao? –
Thật dễ dàng cho tệp đĩa, nhưng khó hơn cho Bitmap trong bộ nhớ.
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;
Thx, nhưng mã đã không đóng ms.I nghĩ rằng bạn sẽ sử dụng http://stackoverflow.com/a/1069509/6116637 – lindexi
@lindexi Mặc dù 'MemoryStream' thực hiện' IDisposable', nó không yêu cầu phải được xử lý một cách rõ ràng vì nó không bọc bất kỳ tài nguyên không được quản lý nào. Nó giống như một mảng byte và cuối cùng sẽ được GC thu thập. – kennyzx
Tôi đã viết một chương trình với wpf
và sử dụng cơ sở dữ liệu cho hiển thị hình ảnh và đây là mã của tôi:
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;
Câu trả lời hay, nhưng tôi rất khuyên bạn nên gói các đối tượng Sql bằng cách sử dụng câu lệnh để chúng được xử lý khi bạn sử dụng chúng. –
- 1. Hiển thị hình ảnh trong TextBlock (WPF)
- 2. Nguồn điều khiển hình ảnh WPF
- 3. Hiển thị bản vẽ. Hình ảnh trong WPF
- 4. Đặt hình nền trên điều khiển hình ảnh WPF?
- 5. hiển thị ảnh động gif trong WPF
- 6. tài nguyên hình ảnh wpf và thay đổi hình ảnh trong điều khiển wpf tại thời gian chạy
- 7. Làm thế nào để hiển thị một số hoạt ảnh trong khi điều khiển đang hiển thị?
- 8. Sử dụng Luồng để hiển thị Hình ảnh * .ico
- 9. Có cách nào để hiển thị các điều khiển WPF trên đầu trang của điều khiển wpf WebBrowser không?
- 10. Xóa một hình ảnh đã được sử dụng bởi một điều khiển WPF
- 11. Cách dễ nhất để lưu wpf Điều khiển hình ảnh vào một tệp
- 12. Hiển thị hình ảnh WPF thành tệp WMF/EMF
- 13. Sử dụng kỹ thuật nào facebook hiển thị hình ảnh?
- 14. Hiển thị màn hình "Chờ" trong WPF
- 15. Hiển thị các thuộc tính Điều khiển bên trong để gắn kết trong WPF
- 16. Hiển thị hình ảnh bằng PDF sử dụng fpdf
- 17. hiển thị hình ảnh sử dụng ashx Handler
- 18. Cách sử dụng Điều khiển người dùng trong WPF MVVM
- 19. Cách sử dụng Điều khiển danh sách hình ảnh
- 20. Làm cách nào để hiển thị nhật ký NLog trong điều khiển WPF?
- 21. D3: Hiển thị hình ảnh thang độ xám được điều khiển bởi dữ liệu mảng 2D
- 22. Sử dụng điều khiển WPF tùy chỉnh trong WinForms
- 23. Cách hiển thị thanh tiến trình trên đầu trang của một điều khiển trong WPF
- 24. Thiết bị Retina iOS không hiển thị hình ảnh @ 2X, nó hiển thị hình ảnh 1X
- 25. Hiển thị hình ảnh jpg trong python
- 26. Sử dụng màn hình UIScreen để điều khiển màn hình VGA - dường như không hiển thị UIWindow?
- 27. Làm cách nào để sử dụng nếu, điều kiện khác trong jsf để hiển thị hình ảnh
- 28. Cách ẩn bảng điều khiển chính và hiển thị hình ảnh trên toàn bộ trang?
- 29. Hiển thị biểu tượng trong hình ảnh
- 30. Làm cách nào để hiển thị hình ảnh trong điều khiển webBrowser trực tiếp từ bộ nhớ?
chính xác bản sao của http://stackoverflow.com/questions/94456/load-a-wpf-bitmapimage-từ-một-hệ thống-bản vẽ-bitmap nhưng câu trả lời của tôi không bị rò rỉ HBitmap –