如何在winform中捕获面板的绘图到位图并将其保存到SQL数据库?

时间:2011-01-31 09:39:14

标签: c# sql-server winforms bitmap panel

我还想在datagridview中显示。我尝试在这里搜索并尝试了几个小时,以各种方式通过drawtobitmap方法将其转换为位图,然后将其转换为咬合数组并将其保存到数据库 数据库显示0X89是什么意思?

它没有向我显示datagridview上的图像

有人可以给我一个有效的代码吗,我会即兴表示非常感谢你。

1 个答案:

答案 0 :(得分:1)

保存

 Bitmap bmp =new Bitmap(panel1.Width,panel1.Height);
    panel1.DrawToBitmap(bmp, panel1.Bounds);
    System.IO.MemoryStream ms = new System.IO.MemoryStream();
    bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Bmp);
    byte[] result = new byte[ms.Length];
    ms.Seek(0,System.IO.SeekOrigin.Begin);
    ms.Read(result, 0, result.Length);

并将结果保存到sqlserver表

并将Byte数组转换为图像使用此

  public static Bitmap ConvertBinaryDataToImage(byte[] buffer)
        {
            System.IO.MemoryStream ms = new System.IO.MemoryStream(buffer);
            Bitmap bmap = new Bitmap(ms);
            return bmap;
        }