Ik wil graag de index van de nieuwe rij in een datagridview bepalen als de gebruiker van de laatste cel van een rij naar de eerste cel van de volgende rij gaat (of omgekeerd) door <tab> in te drukken.
Ik heb geprobeerd om de rowenter (leek me de logische keuze hiervoor) te gebruiken maar dat geeft altijd de index van de vorige rij (onafhankelijk hoe de gebruiker naar de nieuwe rij gaat (muis, cursor, <tab>)).
Vervolgens selectionchanged en dat gaat een beetje beter, maar gaat fout bij gebruik van <tab> zoals hierboven beschreven.
Welk datagridview event moet ik afhandelen om te zorgen dat <tab> resulteert in de index van de nieuwe rij?
Ontwikkelomgeving MS VS2010
Bij voorbaat dank.
Ik heb geprobeerd om de rowenter (leek me de logische keuze hiervoor) te gebruiken maar dat geeft altijd de index van de vorige rij (onafhankelijk hoe de gebruiker naar de nieuwe rij gaat (muis, cursor, <tab>)).
Vervolgens selectionchanged en dat gaat een beetje beter, maar gaat fout bij gebruik van <tab> zoals hierboven beschreven.
Welk datagridview event moet ik afhandelen om te zorgen dat <tab> resulteert in de index van de nieuwe rij?
Ontwikkelomgeving MS VS2010
Bij voorbaat dank.
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| private void dataGridOutputfields_SelectionChanged(object sender, EventArgs e) { int y = dataGridOutputfields.CurrentRow.Index; int y2 = dataGridOutputfields.CurrentCell.RowIndex; int x = dataGridOutputfields.CurrentCell.ColumnIndex; MessageBox.Show(y.ToString() + ", " + x.ToString() + " / " + y2.ToString() + ", " + x.ToString()); // displaysourcelist(Program.cfg_out.fields[i].sources); } private void dataGridOutputfields_RowEnter(object sender, DataGridViewCellEventArgs e) { if (dataGridOutputfields.CurrentRow != null) { } } |