WPF: Geklickte Grid-Zelle ermitteln
-
Montag, 18. März 2013 13:11
Hallo Forum,
ich habe ein Grid mit mehreren Spalten und Reihen, deren Zellen Image-Objekte beinhalten. Wie ermittle ich nun, welche Zelle mit der Maus angeklickt wurde?
lg heinz
Alle Antworten
-
Montag, 18. März 2013 13:19Hi,entweder Du abonnierst das Ereignis jeder Zelle oder Du berechnest die Position.--
Peter Fleischer -
Montag, 18. März 2013 13:50
Hallo Peter,
mit "abonnieren" fange ich nichts an.
Im folgende Code finde ich mit dem Debuger die Zellennr. in "e.Source._parentIndex" kann aber nicht darauf zugreifen. Fehlermeldung: Der öffentliche Member _parentIndex für den Typ Image wurde nicht gefunden. Da muß man doch zugreifen können?
lg heinz
<!-- Grid für Bildteile--> <Grid Name="mx_BildTeileGrid" MouseUp="mx_BildTeileGrid_MouseUp"> </Grid> ----------- Behind-Code -------------------- ' Wenn auf ein Bildteil geklickt Private Sub mx_BildTeileGrid_MouseUp(ByVal sender As System.Object, _ ByVal e As System.Windows.Input.MouseButtonEventArgs) Dim h As Integer = e.Source._parentIndex End Sub -
Montag, 18. März 2013 14:54
Hi,
Du solltest Dir den richtigen event für Deine Operationen aussuchen... Da bieten sich, je nach Szenario, einige an...
BeginningEdit, SelectedCellsChanged, SelectionChanged, CurrentCellChanged...
Viele Grüße,
Thorsten
-
Montag, 18. März 2013 15:49
Hallo Thorsten,
die genannten Events kann ich bei einem Grid und bei Col- und row Definition nicht verwenden. Weiters bin ich mir nicht klar ob das Event im Grid oder in den einzelnen Zellen (aber wie) definiert werden soll.
lg heinz
-
Montag, 18. März 2013 20:10
Ich habe folgende Lösung gefunden:
Ich hole mir von "RoutedEventArgs" das Objekt und dann mit GetColumn(Objekt) und GetRow(Objekt) die Position der Zelle.
- Als Antwort markiert Heinz9 Montag, 18. März 2013 20:11

