string strCon = "Data Source=.;Initial Catalog=northwind;User ID=sa;Password=esa";
            string strSql = " select top 1  picture  from Categories";
            SqlDataAdapter da = new SqlDataAdapter(strSql, strCon);
            DataTable dt = new DataTable();
            da.Fill(dt);
            byte[] img=(byte[])dt.Rows[0][0];
            if (img.Length >0)
            {                MemoryStream ms = new MemoryStream();
                ms.Write(img, 0, img.Length);
                Image m_SourceImage = Image.FromStream(ms); 
                pictureBox1.Image = m_SourceImage;
            }
请大侠指正!

解决方案 »

  1.   

    执行到 Image m_SourceImage = Image.FromStream(ms); 这句是提示参数无效!
      

  2.   

    pictureBox1.Image = System.Drawing.Image.FromStream(new   System.IO.MemoryStream(img));
      

  3.   

    System.Drawing.Image image = System.Drawing.Image.FromFile(filePath);  
     this.pictureBox1.Image = image;
      

  4.   

    ms没创建成功吧。
    MemoryStream ms = new MemoryStream(img.length);
    ms.Seek(0, SeekOrigin.Begin);
    ms.Write(img,0,img.length);
      

  5.   

    使用ImageConverter来转换一下就可以了:ImageConverter imc = new ImageConverter();
    Image _img = imc.ConvertFrom(null, null, o) as Image;
    if (_img!=null)
    {
        pictureBox1.Image = _img
    }
      

  6.   

    原因是因为Categories里存的图片是老式的,不能直接使用MemoryStream来取。但是ImageConverter是兼容以前格式的。
      

  7.   

    Byte[] byteBLOBData =  new Byte[0];   
    byteBLOBData = (Byte[])(dt.Rows[0][0]);   
    MemoryStream stmBLOBData = new MemoryStream(byteBLOBData);   
    pictureBox1.Image= Image.FromStream(stmBLOBData);