【发布时间】:2012-04-11 09:46:48
【问题描述】:
对于 C# 来说仍然相对较新,我试图了解适合我的应用程序的后台工作人员和进度条,以下代码显示我正在向 datagridview 添加一个新列,然后填充新列的所有单元格零(0)。为此实现后台工作人员和进度条的最佳方法是什么。 整个过程大约需要 15 秒,因此需要一个进度条来向用户显示正在发生的事情。
新增和填充新列的代码如下:
//Creates new column in the datagridview
DataGridViewColumn newCol = new DataGridViewColumn();
newCol.CellTemplate = new DataGridViewTextBoxCell();
newCol.HeaderText = tbAddSupp.Text.ToUpper();
newCol.Name = tbAddSupp.Text.ToUpper();
newCol.Visible = true;
dgvStock.Columns.Add(newCol);
cbSuppList.Items.Clear();
cbSuppList2.Items.Clear();
//Adds the default 0 value to all the cells in the new column
//ITS TOO SLOW THOUGH....!!!!!
int cellVal = 0;
foreach (DataGridViewRow row in dgvStock.Rows)
{
for (int r = 0; r < dgvStock.Rows.Count - 1; r++)
{
dgvStock.Rows[r].Cells[newCol.Name.ToString()].Value = cellVal;
}
}
【问题讨论】:
-
我认为你问错了问题。 “如何使这个(出现)更快”将是正确的问题......
标签: c# visual-studio-2010 datagridview progress-bar backgroundworker