Abrufen von Text nur aus einer bestimmten Spalte von Datagridview
-
03-07-2019 - |
Frage
Ich habe eine Datagridview, die mit 4 Spalten und mehreren Zeilen von Daten gefüllt wird. Ich möchte durch die Datagridview zu durchlaufen und den Zellenwert von eine bestimmte Spalte nur bekommen, da ich diese Daten müssen in eine Methode zu übergeben.
Hier ist mein Code:
foreach (DataGridViewRow row in this.dataGridView2.Rows)
{
foreach (DataGridViewCell cell in row.Cells)
{
if (cell.Value == null || cell.Value.Equals(""))
{
continue;
}
GetQuestions(cell.Value.ToString());
}
}
Das scheint nur auf alle Zellen durchlaufen, jedoch muss ich der Lage sein, so etwas wie angeben:
foreach (DataGridViewRow row in this.dataGridView2.Rows)
{
foreach (DataGridViewCell cell in row.Cells[2])//Note specified column index
{
if (cell.Value == null || cell.Value.Equals(""))
{
continue;
}
GetQuestions(cell.Value.ToString());
}
}
Lösung
Wollen Sie nicht nur die innere foreach
Schleife entfernen? Oder habe ich etwas verpasst?
foreach (DataGridViewRow row in this.dataGridView2.Rows)
{
DataGridViewCell cell = row.Cells[2]; //Note specified column index
if (cell.Value == null || cell.Value.Equals(""))
{
continue;
}
GetQuestions(cell.Value.ToString());
}
Andere Tipps
foreach (DataGridViewRow row in this.dataGridView2.Rows)
{
DataGridViewCell cell = row.Cells["foo"];//Note specified column NAME
{
if (cell != null && (cell.Value != null || !cell.Value.Equals("")))
{
GetQuestions(cell.Value.ToString());
}
}
}
Vielleicht könnten Sie die Column überprüfen? Wäre noch eine Schleife durch alle Zellen though.
if (cell.Value == null || cell.Value.Equals("") || cell.ColumnIndex != 2)
{
continue;
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow