Vb.net 你是怎么得到的;“价值”;列表视图中所选项目的

Vb.net 你是怎么得到的;“价值”;列表视图中所选项目的,vb.net,Vb.net,我在vb.net中使用listView来显示一些详细信息(例如,一个类中的学生的示例列表)。我需要获取他们的学生id,这是学生表中的主键。如果您使用WinForms,我怀疑,当您向listView添加一个项时,您应该将标记设置为整个DataRow对象,或学生id列的值。然后,只要有对该项的引用,就可以访问该项的标记属性以获取必要的信息。例如,类似这样的方法会起作用: For Each row As DataRow In table Dim item As ListViewItem = L

我在vb.net中使用listView来显示一些详细信息(例如,一个类中的学生的示例列表)。我需要获取他们的学生id,这是学生表中的主键。如果您使用WinForms,我怀疑,当您向listView添加一个项时,您应该将标记设置为整个DataRow对象,或学生id列的值。然后,只要有对该项的引用,就可以访问该项的标记属性以获取必要的信息。例如,类似这样的方法会起作用:

For Each row As DataRow In table
    Dim item As ListViewItem = ListView1.Items.Add(row("student_name").ToString())
    item.Tag = row(row("student_id").ToString())
Next
然后编写如下代码,从和项中获取学生ID:

Private Sub ListView1_ItemSelectionChanged(ByVal sender As Object, ByVal e As System.Windows.Forms.ListViewItemSelectionChangedEventArgs) Handles ListView1.ItemSelectionChanged
    Dim studentId As String = CType(e.Item.Tag, String)
End Sub

如我所怀疑的,如果您正在使用WinForms,当您向listview添加项目时,您应该将标记设置为整个DataRow对象或student_id列的值。然后,只要有对该项的引用,就可以访问该项的标记属性以获取必要的信息。例如,类似这样的方法会起作用:

For Each row As DataRow In table
    Dim item As ListViewItem = ListView1.Items.Add(row("student_name").ToString())
    item.Tag = row(row("student_id").ToString())
Next
然后编写如下代码,从和项中获取学生ID:

Private Sub ListView1_ItemSelectionChanged(ByVal sender As Object, ByVal e As System.Windows.Forms.ListViewItemSelectionChangedEventArgs) Handles ListView1.ItemSelectionChanged
    Dim studentId As String = CType(e.Item.Tag, String)
End Sub

使用

使用

您是否使用了数据绑定,或通过代码填充listView?您是否使用了数据绑定,或通过代码填充listView?@user27032010如果这是您所寻找的,您介意接受这一最佳答案吗?@user27032010如果这是您所寻找的,您介意接受这一最佳答案吗?