Tôi cần chuyển đổi System.Drawing.Bitmap thành lớp System.Windows.Media.ImageSource để liên kết nó với một điều khiển HeaderImage của một WizardPage (Bộ công cụ WPF mở rộng). Bitmap được đặt làm tài nguyên của assembly tôi viết. Nó đang được tham chiếu như thế:WPF - chuyển đổi Bitmap sang ImageSource
public Bitmap GetBitmap
{
get
{
Bitmap bitmap = new Bitmap(Resources.my_banner);
return bitmap;
}
}
public ImageSource HeaderBitmap
{
get
{
ImageSourceConverter c = new ImageSourceConverter();
return (ImageSource) c.ConvertFrom(GetBitmap);
}
}
Bộ chuyển đổi đã được tìm thấy bởi tôi ở đây: http://www.codeproject.com/Questions/621920/How-to-convert-Bitmap-to-ImageSource tôi nhận được một NullReferenceException tại
return (ImageSource) c.ConvertFrom(Resources.my_banner);
Làm thế nào tôi có thể khởi tạo ImageSource để tránh ngoại lệ này? Hoặc là có một cách khác? Tôi muốn sử dụng nó sau đó như sau:
<xctk:WizardPage x:Name="StartPage" Height="500" Width="700"
HeaderImage="{Binding HeaderBitmap}" Enter="StartPage_OnEnter"
Cảm ơn trước cho bất kỳ câu trả lời nào.
Xem ở đây: [a NullReferenceException là gì và làm thế nào để sửa chữa nó] (http : //stackoverflow.com/q/4660142/1136211) – Clemens