noch relativ neu in C#, ich versuche, meinen Kopf um den Hintergrund Arbeiter und Fortschrittsbalken für meine App geeignet zu bekommen, der folgende Code zeigt, dass ich eine neue Spalte zu einem Datagridview hinzufügen und dann füllen Sie alle Zellen der neuen Spalte mit eine Null (0). Was wäre der beste Weg, um den Hintergrundarbeiter und Fortschrittsbalken dafür zu implementieren. Der gesamte Vorgang dauert ungefähr 15 Sekunden. Daher ist ein Fortschrittsbalken erforderlich, um dem Benutzer zu zeigen, dass etwas passiert.Hintergrund Arbeiter und Fortschrittsbalkenimplementierung für zusätzliche Spalte in Datagridview?
Der Code für das Hinzufügen und die neue Spalte Füllung ist wie folgt:
//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;
}
}
Ich denke, du stellst die falsche Frage. "Wie man das (erscheint) schneller macht" wäre die richtige Frage ... – jeroenh