Comme vous le savez, par question, c'est ce que je veux. J'utilisais listbox. Dans Listbox
nous pouvons obtenir l'élément sélectionné par une simple ligne de code: listbox1.selectedItem
. Maintenant, je me sers de ListView
, comment obtenir les SelectedItem
ou Selectedindex
de ListView
.
Voici la réponse que j'ai trouvée pour ma question:
urlList1.FocusedItem.Index
Et je reçois la valeur de l'élément sélectionné par:
urlList1.Items(urlList1.FocusedItem.Index).SubItems(0).Text
ListView
renvoie des collections d'éléments et d'indices sélectionnés via les propriétés SelectedItems
et SelectedIndices
. Notez que ces collections sont vides si aucun élément n'est actuellement sélectionné (lst.SelectedItems.Count = 0
). Le premier élément sélectionné est lst.SelectedItems(0)
. L'index de cet élément dans la collection Items
est lst.SelectedIndices(0)
. Donc en gros
lst.SelectedItems(0)
est le même que
lst.Items(lst.SelectedIndices(0))
Vous pouvez également utiliser des cases à cocher. Définissez CheckBoxes
sur True
pour cela. Grâce aux propriétés CheckedItems
et CheckedIndices
, vous pouvez voir quels éléments sont vérifiés.
VB6: Listview1.selected élément
VB10: Listview1.FocusedItem.Text
Private Sub ListView1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ListView1.Click
Dim tt As String
tt = ListView1.SelectedItems.Item(0).SubItems(1).Text
TextBox1.Text = tt.ToString
End Sub
par exemple, si vous souhaitez sélectionner le même élément dans une liste à l'aide d'une liste, vous pouvez utiliser Private Sub ListView1_SelectedIndexChanged (expéditeur de ByVal en tant que System.Object, ByVal et en tant que System.EventArgs) gère ListView1.SelectedIndexChanged
For aa As Integer = 0 To ListView1.SelectedItems.Count - 1
ListBox1.SelectedIndex = ListView1.SelectedIndices(aa)
Next
End Sub
ListView.FocusedItem.Index
ou vous pouvez utiliser une boucle foreach comme celle-ci
int index= -1;
foreach (ListViewItem itm in listView1.SelectedItems)
{
if (itm.Selected)
{
index= itm.Index;
}
}
Veuillez essayer ceci pour obtenir l'index de la colonne
Private Sub lvDetail_MouseMove(sender As Object, e As MouseEventArgs) Handles lvDetail.MouseClick
Dim info As ListViewHitTestInfo = lvDetail.HitTest(e.X, e.Y)
Dim rowIndex As Integer = lvDetail.FocusedItem.Index
lvDetail.Items(rowIndex).Selected = True
Dim xTxt = info.SubItem.Text
For i = 0 To lvDetail.Columns.Count - 1
If lvDetail.SelectedItems(0).SubItems(i).Text = xTxt Then
MsgBox(i)
End If
Next
End Sub