private void write_listview(DataSet ds)
        {
            DataTable dt = ds.Tables[0];
            dataGridView1.DataSource = dt.DefaultView;
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                dataGridView1.Rows[i].Cells["num"].Value = i + 1;
                dataGridView1.Rows[i].Cells["image"].Value = GetFile(AppDomain.CurrentDomain.BaseDirectory + @"File\" + dt.Rows[i]["Pic"].ToString());
                
            }
        }
/// pictureBox绑定图片
               pictureBox2.SizeMode = PictureBoxSizeMode.Zoom;
                
                pictureBox2.Image = GetFile(AppDomain.CurrentDomain.BaseDirectory + @"File\" + path);
 ///
        /// 将文件转为内存流
        ///
        /// 
        /// 
        private MemoryStream ReadFile(string path)
        {
            if (!File.Exists(path))
                return null;
            using (FileStream file = new FileStream(path, FileMode.Open))
            {
                byte[] b = new byte[file.Length];
                file.Read(b, 0, b.Length);                 MemoryStream stream = new MemoryStream(b);
                return stream;
            }
        }         ///
        /// 将内存流转为图片
        ///
        /// 
        /// 
        private Image GetFile(string path)
        {
            MemoryStream stream = ReadFile(path);
            return stream == null ? null : Image.FromStream(stream);
        }
or(
  public System.Drawing.Image GetImage(string path)
        {
            FileStream fs = new FileStream(path, FileMode.Open);
            Image result = Image.FromStream(fs);             fs.Close();             return result;         }
 private void dataGridView1_CellContentClick_1(object sender, DataGridViewCellEventArgs e)
        {
            //var s = dataGridView1.Columns[e.ColumnIndex].Name;
            path = dataGridView1.Rows[e.RowIndex].Cells["imagepath"].Value.ToString();
             id = dataGridView1.Rows[e.RowIndex].Cells["Column2"].Value.ToString();
            if (dataGridView1.Columns[e.ColumnIndex].Name == "image")
            {
                pictureBox2.SizeMode = PictureBoxSizeMode.Zoom;
                
                pictureBox2.Image = GetFile(AppDomain.CurrentDomain.BaseDirectory + @"File\" + path);             }
            if (dataGridView1.Columns[e.ColumnIndex].Name == "Column_del")
            {
                pictureBox2.Image = null;
                
                if (File.Exists(AppDomain.CurrentDomain.BaseDirectory + @"File\" + path))
                {
                    File.Delete(AppDomain.CurrentDomain.BaseDirectory + @"File\" + path);
                }
                string sqlstr = "DELETE from [Image] where ID= '" + id + "'";
                int count = SQLiteHelper.ExecuteNonQuery(sqlstr);
              
                if (count > 0)
                {
                    this.dataGridView1.Rows.Remove(this.dataGridView1.Rows[e.RowIndex]);
                    MessageBox.Show("删除成功!");
                    sqlstr = "SELECT * FROM [Image] where [EID]='" + editsrt + "'";//"SELECT * FROM [Image] where EID='" + eid + "'";
                    DataSet ds_img = SQLiteHelper.ExecuteQuery(sqlstr);
                    write_listview(ds_img);                 }             }

winfrom datagridview ,picturebox,显示图片,以及删除问题的更多相关文章

  1. EmguCV控件Emgu.CV.UI.ImageBox及C# picturebox显示图片连续刷新出现闪烁问题

    在上一篇里,EmguCV(OpenCV)实现高效显示汉字及叠加  实现了视频叠加及显示,但存在问题,就是 Emgu.CV.UI.ImageBox及C# picturebox显示图片时都会出现闪烁,尤其 ...

  2. C#winfrom listview 设置显示图片

    ListView控件有5种显示图片方式:LargeIcon(大图标),Detail(详细),SmallIcon(小图标),List(列表),Tile,常用前4种.  这里说一下设置方式:LargeIc ...

  3. [WinForm]- 设置DataGridView单元格内根据不同值显示图片

    首先设置要显示图片的列 DataGridViewImageColumn status = new DataGridViewImageColumn(); status.DisplayIndex = ; ...

  4. 如何使用SOIL在VS2012的 C++环境下显示图片

    先看下效果. 这是一个很无聊的功能....首先说下,我做这个功能的初衷并不是为了实现在控制台中显示图片...(这貌似很无聊) 而是因为自己想做用C做一个游戏:http://q.cnblogs.com/ ...

  5. While readingiphone真机无法显示图片,而模拟器可以正常显示

    可能,很多开发IOS程序的遇到过在模拟器里,加载图片都是正常的,但是在真机里就会出现图片资源不能加载的问题. 其中一种原因是,在Simulator里面,例如:图片资源名称为:a.PNG,在代码你里,你 ...

  6. 利用COM组件IPicture读取jpg、gif、bmp图片文件数据和显示图片

    1.读取图片数据 函数原型:bool LoadImage(const char *pName, unsigned char *pBitData); 函数功能,读取pName指向的图片文件的位图数据 b ...

  7. 我写的一个 Qt 显示图片的控件

    Qt 中没有专门显示图片的控件.通常我们会使用QLabel来显示图片.可是QLabel 显示图片的能力还是有点弱.比方不支持图像的缩放一类的功能.使用起来不是非常方便. 因此我就自己写了个简单的类. ...

  8. FrameBuffer系列 之 显示图片

     摘自:http://blog.csdn.net/luxiaoxun/article/details/7622988 #include <unistd.h> #include < ...

  9. winfrom中pictureBox控件的部分使用方法

    一.后台属性 1.pictureBox1.Image显示图片 2.pictureBox1.ImageLocation存储和提取图片路径 二.面板属性 1.Picturebox控件SizeMode属性 ...

随机推荐

  1. Mysql 利用拷贝data目录文件的方式迁移mysql数据库

    Mysql 利用拷贝data目录文件的方式迁移mysql数据库 步骤如下: 1.首先要确定data目录 这个问题困扰了我很久,因为网上的帖子大部分只是说拷贝mysql数据库目录下的data文件夹中的数 ...

  2. setfacl 设置文件访问控制列表

    setfacl 设置文件访问控制列表 用法: setfacl [-bkndRLP] { -m|-M|-x|-X ... } file ... 参数: -m, --modify=acl 更改文件的访问控 ...

  3. centos/rhel 7 几个最重要变化(systemd,firewalld,networkmanager,文件系统)

    详细参考:https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/System_Administra ...

  4. Github网站加载不完全,响应超时,解决办法

    Github网站加载缓慢信息不全解决方法 Github是一个代码托管平台和开发者社区,开发者可以在Github上创建自己的开源项目并与其他开发者协作编码.毫不夸张地说,高效利用Github是一个优秀的 ...

  5. Windows死机的话,可能的一些猫病

    一.由硬件引起的原因 [散热不良] 显示器.电源和CPU在工作中发热量非常大,因此保持良好的通风状况非常重要,如果显示器过热将会导致色彩.图象失真甚至缩短显示器寿命.工作时间太长也会导致电源或显示器散 ...

  6. I2C总线的仲裁机制

    在多主的通信系统中.总线上有多个节点,它们都有自己的寻址地址,可以作为从节点被别的节点访问,同时它们都可以作为主节点向其他的节点发送控制字节和传 送数据.但是如果有两个或两个以上的节点都向总线上发送启 ...

  7. centos 7.2 安装gitlab汉化

    ####################你如果搜到我的这个博客,你的系统得是centos 7的   80端口没有占用.  QQ:1394466404   这个博客维护1年 #### 多地方第一个是百度 ...

  8. Shell脚本,更改Info.plist中的日期等

    #!/bin/bashroot_src=$(dirname $(PWD)) bundle_name='RandomDebbot.bundle' target_path=$root_src/ecovac ...

  9. uniGUI出新版本了,0.97.0.1081

    uniGUI出新版本了,0.97.0.1081,试用版0.97.0.1075,支持Delphi2006~XE7.下载地址是: http://www.unigui.com/downloads 已在XE6 ...

  10. Windows,远程计算机:X.X.X.X,这可能是由于CredSSP加密Oracle修正

    https://blog.csdn.net/wyhwlls/article/details/80320301 近期window 10家庭版更新后,远程桌面连不到服务器了 网上有卸载补丁,修改组策略什么 ...