WPF在DLL中读取Resource的方法

WPF是个用户控件,被WinForm调用。而WinForm是在一个DLL类库中被调用。试了很多方法,都无法将Resource中的图读进程序。用下面的方法总算实现了。

 

/根据图片的名称,从资源中找到它
public static System.Drawing.Bitmap GetPngFromResources(string pngName)
{
/tp://www.worlduc.com/blog2012.aspx?bid=760294 c#访问Resources.resx中的资源
ResourceManager rmManager = global::AddMenuToRevit2013.Properties.Resources.ResourceManager;
object obj = rmManager.GetObject(pngName);
if (obj == null)
{
MessageBox.Show("未找到图片:" + pngName);
return null;
}
System.Drawing.Bitmap b = obj as System.Drawing.Bitmap;
if (b != null)
{
return b;
}
else
{
MessageBox.Show("未找到图片:" + pngName);
return null;
}
} // System.Drawing.Bitmap要如何轉換成WPF中可用的ImageSource
/tp://www.dotblogs.com.tw/bauann/archive/2013/04/18/101793.aspx
public static BitmapImage BitmapToBitmapImage(System.Drawing.Bitmap bitmap)
{
BitmapImage bitmapImage = new BitmapImage();
System.IO.MemoryStream ms = new System.IO.MemoryStream();
bitmap.Save(ms, bitmap.RawFormat);
bitmapImage.BeginInit();
bitmapImage.StreamSource = ms;
bitmapImage.CacheOption = BitmapCacheOption.OnLoad;
bitmapImage.EndInit();
bitmapImage.Freeze();
return bitmapImage;
}
上一篇:【Linux】Linux中VIM编辑器的使用


下一篇:Linux学习之十三-vi和vim编辑器及其快捷键