ERLEDIGT
JA
JA
ANTWORTEN
3
3
ZUGRIFFE
1169
1169
EMPFEHLEN
-
Hy,
habe ein kleines Problem. Ich habe ein Datagridview und diesem ein contextmenustrip zugeordnet.
Nur wenn wenn das Kontextmenü aufrufe, erkennt es nicht die row des datagridviews. Es nimmt immer den ersten Eintrag (Index), auch wenn ich mit rechts auf den zweiten geklickt habe um das Kontextmenü aufzurufen.
Wie bekomme ich es geregelt, das das Kontextmenü auch die row des angeglickten Eintrags des datagridviews erkennt?
Jemand eine idee?
Gruß
Marco
-
Habe eine Lösung gefunden:
Code :1 2 3 4 5 6 7 8 9
Private Sub DGVTermine_CellMouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellMouseEventArgs) Handles DGVTermine.CellMouseMove With DGVTermine .CurrentRow.Selected = False '.CurrentCell.Selected = False '.Rows(e.RowIndex).Cells(e.ColumnIndex).Selected = True .Rows(e.RowIndex).Selected = True .CurrentCell = .SelectedCells(0) End With End Sub
Da ich auf die ganze Row gehe sind die Teile mit den Cells ausdokumentiert...
Gruß
Maggo13
-
09.09.09 11:27 #3
- Registriert seit
- May 2007
- Ort
- Ostmanien
- Beiträge
- 33
Wieso eigentlich mit Mousemove?Wie bekomme ich es geregelt, das das Kontextmenü auch die row des angeglickten Eintrags des datagridviews erkennt?
Wenn du das Ereignis: CellClick des DataGridView implementierst und du das Event Object abfragst, bekommst du sowohl den RowIdex als auch den ColumnIndex geliefert.
Also e.RowIndex bzw. e.ColumnIndex
-
Wieso Mousemove? Weil ich die Rows farblich ändere, bei drüberfahren. Es muss folglich ständig geprüft werden, wo die Maus steht.
Hier der neue Code:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Private Sub DGVTermine_CellMouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellMouseEventArgs) Handles DGVTermine.CellMouseMove Debug.Print(e.RowIndex.ToString) With DGVTermine .Rows(e.RowIndex).Selected = True .CurrentCell = .Item(3, e.RowIndex) End With End Sub Private Sub DGVTermine_MouseHover(ByVal sender As Object, ByVal e As System.EventArgs) Handles DGVTermine.MouseHover altfarbe = Me.DGVTermine.RowsDefaultCellStyle.SelectionBackColor Me.DGVTermine.RowsDefaultCellStyle.SelectionBackColor = FromArgb(251, 230, 148) End Sub Private Sub DGVTermine_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles DGVTermine.MouseLeave Me.DGVTermine.RowsDefaultCellStyle.SelectionBackColor = altfarbe End Sub
Gruß
Marco
Ähnliche Themen
-
Tiny MCE - Contextmenu
Von yeronimo im Forum Javascript & AjaxAntworten: 6Letzter Beitrag: 01.12.09, 13:13 -
was bedeutet "currentRow.RowState != DataRowState.Deleted"?
Von hemax im Forum .NET DatenverwaltungAntworten: 3Letzter Beitrag: 08.04.08, 17:46 -
ContextMenu und Ausklappmenü?!
Von heino-th im Forum Flash PlattformAntworten: 7Letzter Beitrag: 15.10.05, 18:55 -
Shortcut von ContextMenu
Von Nikon the Third im Forum .NET ArchivAntworten: 2Letzter Beitrag: 19.11.04, 21:40 -
Contextmenu nur in Listbox?
Von CoolPeter im Forum .NET ArchivAntworten: 1Letzter Beitrag: 17.02.04, 05:50





Zitieren
Login





