Wie kann man bei einem ListView im .net Framework die Spalte bestimmen, auf die gerade geklickt wurde?
Vielen Dank. Das ist eine ganz schöne Rätselnuss. HitTest liefert mir ein ein ListViewItem. Der Index entpricht der Zeile. Wie bekomme ich das entsprechende ListViewSubItem, bzw dessen Index?
''' <summary> ''' event handle Listview prnr/bg ''' http://social.msdn.microsoft.com/Forums/en-US/Vsexpressvb/thread/26e327f4-c446-417b-8fe5-c28b774bd444/ ''' </summary> Private Sub ListView1_Mouse(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) _ Handles ListView1.MouseClick, ListView3.MouseClick Dim _listView As ListView = CType(sender, ListView) Dim hti As ListViewHitTestInfo = _listView.HitTest(e.Location) If hti.SubItem IsNot Nothing Then Dim subitemindex As Integer = hti.Item.SubItems.IndexOf(hti.SubItem) Dim val As String = hti.Item.SubItems(subitemindex).Text
Vielen Dank, Ellen Sonne, mit dem CodeSchnipsel von Dir funktioniert es. Bei mir sehen die Zeilen jetzt so aus: listView1->MouseDownEvent.... { ListViewHitTestInfo ^htInfo; htInfo= listView1->HitTest(e->X,e->Y); Int16 subIndex= htInfo->Item->SubItems->IndexOf(htInfo->SubItem); ... }
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.