当前位置:首页 > 开发教程 > .net教程 >

在C#中如何把数据表中的图片绑定到WinForms图像列表

时间:2016-06-01 09:23 来源:互联网 作者:源码搜藏 收藏

介绍 这个技巧将帮助您获取图像,并将其填充到 ImageList中 并显示图像逐一 PictureBox中 使用C#在Windows窗体。 背景 存储图像到SQL Server 2008 R2的。 使用代码 创建使用C#在winform一个新项目。 添加新的Winform。 现在添加一个 图片框 , 图像列表 ,

介绍

这个技巧将帮助您获取图像,并将其填充到ImageList中并显示图像逐一PictureBox中使用C#在Windows窗体。

背景

存储图像到SQL Server 2008 R2的。

使用代码

创建使用C#在winform一个新项目。

添加新的Winform。现在添加一个图片框图像列表,并定时以这种形式。

我在窗体加载获取图像。

private void fileUploadToolStripMenuItem_Click(object sender, EventArgs e)
{
            th.Start();
}

timer1_Tick()

int i = 0;
private void timer1_Tick(object sender, EventArgs e)
{
    i++;
    imageList1 = FetchAllImages();
    int imgCount = imageList1.Images.Count;
    if (i % 2 != 0)
    {
        if (i < imgCount)
        {
            pictureBox1.Image = imageList1.Images[i];
        }
        else
        {
            i = 0;
        }
        Thread.Sleep(500);
    }
    else
    {
        if (i < imgCount)
        {
            pictureBox1.Image = imageList1.Images[i];
        }
        else
        {
            i = 0;
        }
        Thread.Sleep(500);
    }
}

FetchAllImages

private ImageList FetchAllImages()
{
    ImageList imglist = new ImageList();
    string qry = "Select * from tbl_ScreenImages";
    SqlCommand cmd = new SqlCommand(qry, conn);
    SqlDataAdapter da = new SqlDataAdapter(cmd);
    DataTable dt = new DataTable();
    da.Fill(dt);
    foreach(DataRow dr in dt.Rows)
    {
        byte[] arr = (byte[])dr["imgNps"];
        MemoryStream ms = new MemoryStream(arr);
        imglist.Images.Add(Image.FromStream(ms));
    }

    return imglist;
}

编程快乐!


.net教程阅读排行

最新文章