WPF如何将数据库中的二进制图片数据显示在Image控件上_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > WPF如何将数据库中的二进制图片数据显示在Image控件上

WPF如何将数据库中的二进制图片数据显示在Image控件上

 2015/2/13 2:51:25  杯酒红尘  程序员俱乐部  我要评论(0)
  • 摘要:首先在xaml文件里定义一个Image控件,取名为imgMemoryStreamstream=newMemoryStream(获得的数据库对象);BitMapImagebmp=newBitMapImage();bmp.BeginInit();//初始化bmp.StreamSource=stream;//设置源bmp.EndInit();//初始化结束img.Source=bmp;//设置图像Source很多人用这个方法都没有初始化BitMapImage,这样将会导致错误,并无法正常获取图片数据
  • 标签:图片 数据库 数据 控件 二进制

首先在xaml文件里定义一个Image控件,取名为img

MemoryStream stream = new MemoryStream(获得的数据库对象);

BitMapImage bmp = new BitMapImage();

bmp.BeginInit();//初始化

bmp.StreamSource = stream;//设置源

bmp.EndInit();//初始化结束

img.Source = bmp;//设置图像Source

很多人用这个方法都没有初始化BitMapImage ,这样将会导致错误,并无法正常获取图片数据。

public class emp

{

  public byte[] Photo{set;get;}

}

xaml中的代码

 private void btnChoosePhoto_Click(object sender, RoutedEventArgs e)
        {
            OpenFileDialog ofd = new OpenFileDialog();//打开选择文件窗口
            ofd.Filter = "jpg|*.jpg|png|*.png";//过滤器
            if (ofd.ShowDialog() == true)
            {
                string fileName = ofd.FileName;//获得文件的完整路径
                emp.Photo   = File.ReadAllBytes(fileName);//把图像的二进制数据存储到emp的Photo属性中
                img.Source = new BitmapImage(new Uri(fileName));//将图片显示到Image控件上
            }
        }

发表评论
用户名: 匿名