在datagridview中连续刷新

时间:2012-08-03 14:42:05

标签: c#

我已经编写了代码,可以通过DataGridView事件在CellFormatting winform中显示图片。它运行良好,但我已更改为图像的单元格不断刷新。我该怎么办?

这是CellFormatting中的代码:

   dgvUnknownPayed.Rows[e.RowIndex].Cells[colStateImage.Name].Value = Properties.Resources.undo; 

1 个答案:

答案 0 :(得分:1)

不应直接修改单元格,而应修改数据源。

Datagridview1.datasouce = datatable1.defaultview();

foreach (DataRow row in datatable1.Rows)
{
  row.BeginEdit();
  row[2] = ‘Something_Here’;
  row.EndEdit();
}

如果你想停止所有刷新,请使用:

DataGrid.SuspendLayout(); //Stops refreshing
DataGrid.ResumeLayout(); //Re-Enable refreshing

DataTable是您在此案例中用于将数据绑定到DataGridView的.Net对象。

DataTable datatable1 = new DataTable创建DataTable的新实例 Datagridview1.datasouce = datatable1.defaultview();将datatable1绑定为网格的数据源。这样,每次表格更改时,网格都会更新。

现在使用此表,您可以这样做。 (这只是一个例子)

  • 您可以添加这样的列table.Columns.Add("Division", typeof(int));您可以在其中指定列的名称以及将在其中输入的数据类型。就像在SQL Server中一样。
  • 您可以添加像table.Rows.Add(Something)这样的行,在这种情况下,Integer

就这么简单。为您想要的任何内容更改Integer类型。别忘了这只是一个简单的例子。您可以添加更多列和行。