1

我在刷新 DataGridView 中的图像列时遇到问题。首先,我从数据库中获取信息,并且毫无问题地填充我的 DataGridView。

这是填充它的代码:

dgpointsnc.Rows.Clear();   

DBEngine db = new DBEngine(); //This is simply an object that I use to communicate with the database
string query;

query = @"SELECT * FROM tpointncp";
db.ExecuteSelectQuery(query,"tpoints");

for(int i=0; i<db.DtSet.Tables["tpoints"].Rows.Count;i++)
{
   string path = db.DtSet.Tables["tpoints"].Rows[i]["image"].ToString();

   if(path == "")
   {
       path = @"Z:\Qualité\ImagePourquois\gear.png";
   }

   dgpointsnc.Rows.Add(Image.FromFile(path),"test","test");
}

这是代表此的图像:

在此处输入图像描述

然后,我允许用户通过单个表单修改所选行的图像。这一步运作良好。

因此,修改完成后,我使用第一次使用的相同方法重新填充 DataGridView。我遇到的问题是所有列表项都刷新得很好,但是“图像列”保留了旧图像并在其前面添加了新图像

在此处输入图像描述

我不知道为什么它保留旧的而列表的其余部分令人耳目一新。

伙计们,我认为问题不在于我填充 datagridview 时;我试图向我的表中添加更多数据。

我滚动时的结果:

在此处输入图像描述

知道什么可以做到吗?

4

1 回答 1

2

根据 Vinc之前的编辑,问题是:

当您将图像列的属性“ImageLayout”设置为“Stretch”时,它会产生该问题

于 2013-10-24T17:11:21.233 回答