2017-06-27 41 views
0

在我的应用程序中,我显示消息,如果文件上传成功,同时我显示的消息不会在消息框中上传。如何使用Windows窗体在datagridview中显示计数

问题是我需要在消息框中每次单击确定按钮时,每当消息occours。假设如果没有插入40个文件,我需要点击OK按钮40次。我需要显示在datagridview中插入和未插入的文件。我怎样才能做到这一点。

if (ErrorMessage == 0) 
{ 
    Ffname += path + "-" + "Uploaded successfully" + "\n"; 
} 
else 
{ 
    NotInsFiles += path + " - " + "Not Inserted" + "\n"; 
} 
lbluplodedfile.Text = TabNotIns; 
if (Ffname != null || Ffname != "") 
{ 
    MessageBox.Show(Ffname); 
    lbluplodedfile.Text = Ffname; 
} 
else 
{ 
    MessageBox.Show(NotInsFiles); 
} 
+0

点击按钮有什么作用?你不能把它放在计时器中吗? – BugFinder

+0

它不是点击按钮它是我们在消息框中得到的按钮,这是正常的确定按钮 – abc

+1

嗯是的,因为messagebox.show会暂停代码,直到你回应它...... – BugFinder

回答

1

我认为你必须做在你上传文件循环,你必须在这个循环中加入

if (ErrorMessage == 0) 
{ 
    Ffname += path + "-" + "Uploaded successfully" + "\n"; 
} 
else 
{ 
    NotInsFiles += path + " - " + "Not Inserted" + "\n"; 
} 

当循环结束试图表明消息框

要显示在datagridview中的图像,你必须插入DataGridViewImageColumn类型的列,然后你可以在里面显示图像。

 private void ImgToDataGridView() 
     { 
      /* List of path of img */ 
      List<string> pathImgUpload = new List<string>(); 
      List<string> pathNotInsert = new List<string>(); 

      /* Just for my test */ 
      pathImgUpload.Add("./abc.png"); 
      pathImgUpload.Add("./abc.png"); 
      pathImgUpload.Add("./abc.png"); 
      pathImgUpload.Add("./abc.png"); 

      pathNotInsert.Add("./abc.png"); 
      pathNotInsert.Add("./abc.png"); 
      pathNotInsert.Add("./abc.png"); 
      pathNotInsert.Add("./abc.png"); 
      pathNotInsert.Add("./abc.png"); 

      /* Creation of columns for the good and bad img */ 
      DataGridViewImageColumn colImgUpload = new DataGridViewImageColumn(); 
      DataGridViewImageColumn colImgNotInsert = new DataGridViewImageColumn(); 
      dataGridView1.Columns.Add(colImgUpload); 
      dataGridView1.Columns.Add(colImgNotInsert); 

      /* Max of size of pathImgUpload and pathNotInsert */ 
      var lineadd = pathImgUpload.Count > pathNotInsert.Count ? pathImgUpload.Count : pathNotInsert.Count; 

      /* Create the good number of line (-1 because a first line is already in datagridview)*/ 
      for(int i = 0; i <lineadd - 1; i++) 
      { 
       dataGridView1.Rows.Add(); 
      } 

      /* adding good img */ 
      for (int i = 0; i < pathImgUpload.Count(); i++) 
      { 
       string path = pathImgUpload[i]; 
       var img = new Bitmap(path); 
       dataGridView1.Rows[i].Cells[0].Value = img; 
      } 

      /* adding bad img */ 
      for(int i = 0; i < pathNotInsert.Count();i++) 
      { 
       string path = pathNotInsert[i]; 
       var img = new Bitmap(path); 
       dataGridView1.Rows[i].Cells[1].Value = img; 
      } 
     } 
+0

我需要显示上传和未上传的文件在datagridview – abc

+0

看这个帖子https://stackoverflow.com/questions/16784440/how-display-images-in-datagridview-c-sharp – Kohagan

相关问题