dataGridView: CurrentCell löscht SelectedRows

21/05/2008 - 10:52 von WolfgangH | Report spam
Hallo dataGridView-Experten,

in einer Textbox gebe ich ein Suchkriterium an und für jede passende Zeile
setze ich:
dgv.Rows[i].Selected = true;
In der Darstellung sehe ich alle passenden Zeilen selektiert - so soll es
sein.

Problem:
Mit einem Button mochte ich die CurrentRow jeweils auf die nàchste
selektierte Zeile setzen.
Ab hier hat dgv.SelectedRows.Count den Wert 1 und entspricht der CurrentRow.

Frage:
Wie kann ich die selektierten Zeilen behalten und mit der CurrentRow
weiterspringen? Oder muss ich jedesmal die die Selektionen neu erzeugen?

Danke für eure Hinweise im voraus
Wolfgang
 

Lesen sie die antworten

#1 Frank Dzaebel
21/05/2008 - 19:37 | Warnen spam
Hallo Wolfgang,

in einer Textbox gebe ich ein Suchkriterium an und für jede passende Zeile
setze ich: dgv.Rows[i].Selected = true;
In der Darstellung sehe ich alle passenden Zeilen selektiert - so soll es
sein. Problem: Mit einem Button mochte ich die CurrentRow jeweils auf
die nàchste selektierte Zeile setzen.
Ab hier hat dgv.SelectedRows.Count den Wert 1 und entspricht der
CurrentRow.
Frage:
Wie kann ich die selektierten Zeilen behalten und mit der CurrentRow
weiterspringen? Oder muss ich jedesmal die die Selektionen neu erzeugen?



Also normal würde man ja die [Strg] Taste halten, dann
würden die Selektionen erhalten bleiben.
Programmatisch aber etwa:

private void btnMoveNextRow_Click(object sender, EventArgs e)
{
DataGridViewCell[] selected = new DataGridViewCell[
dgv.SelectedCells.Count];
dgv.SelectedCells.CopyTo(selected,0);
BindingContext[dgv.DataSource].Position += 1;
foreach (DataGridViewCell cell in selected)
dgv[cell.ColumnIndex, cell.RowIndex].Selected = true;
}


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen