Hallo zusammen
dark-destination1988 hat folgendes geschrieben : |
| naja eventuell beim click ereignis testen ob die gewählte zeile der ersten entspricht und wenn ja --> selection aufheben |
... das ist eigentlich der richtige Ansatz.
Ich habe für mich nun eine Lösung gefunden, die ich akzeptieren kann.
C#-Quelltext
1: 2: 3: 4: 5:
| private void dataGridView1_CellEnter(object sender, DataGridViewCellEventArgs e) { dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Selected = false; dataGridView1.Rows[e.RowIndex].Cells["DEINSPALTENNAME"].Selected = true; } |
Mit diesem Event sind die Maus-Ereignisse und die Selektion mit der Tastatur abgefangen.
Die gewünschte (editierbare) Zelle erhält gleich nach der Selektion einer beliebigen Zelle den Fokus und das unschöne Aufflackern der fälschlicherweise selektierten Zelle entfällt.
Die beliebig selektierte Zelle wird farblich also zu keinem Zeitpunkt verändert.
Wenn man mehrere editierbare Zellen (Spalten) hat, kann man diese mit einer IF-Anweisung natürlich ansteuern und den User zur richtigen Eingabe zwingen.
Gruss
mats74