2010-05-01 60 views
1

这是一个简单的问题(让我们看看)在Wpf中将Bitmapimge绑定到图像?

我想将位图图像绑定到图像。为了在cs代码中这样做,你必须写下这一行。

this.leftImage.Source = new BitmapImage(new Uri(@"C:\a.bmp")); 

但我想使从资源绑定。因为在释放时间资源成为project.exe文件的一部分,并且如果从文件(平均设置Image.source与图像文件地址)进行绑定,则必须始终将图像文件放在相同地址(灾难编程):)

回答

2

一种选择是从resx文件中获取它。你可以做类似的事情。假设Images.resx包含左图像位图。

leftImage.Source = ConvertBitmapToBitmapImage(Images.Left); 
... 
private BitmapImage ConvertBitmapToBitmapImage(Bitmap bitmap) 
{ 
    MemoryStream memoryStream = new MemoryStream(); 
    bitmap.Save(memoryStream, ImageFormat.Png); 
    BitmapImage bitmapImage = new BitmapImage(); 
    bitmapImage.BeginInit(); 
    bitmapImage.StreamSource = new MemoryStream(memoryStream.ToArray()); 
    bitmapImage.EndInit(); 

    return bitmapImage; 
} 

随着更多的工作,你可以从XAML做到这一点。

+0

你的帮助很大。 – Rev 2010-05-02 10:28:19