VB.NET中如何遍历ListView行列获取值?解决类型转换错误
VB.NET ListView遍历行与列的正确方法
你遇到的语法错误是因为你的ListView采用了数据绑定模式,此时lsvCurrent.Items中的元素类型是ListViewDataItem,而非普通的ListViewItem,直接声明为ListViewItem会导致类型不匹配。
数据绑定模式下的正确遍历代码
' 遍历每一行 For Each item As ListViewDataItem In lsvCurrent.Items ' 遍历当前行的所有列 For Each subItem As ListViewItem.ListViewSubItem In item.SubItems ' 获取当前列的文本值 Dim columnValue As String = subItem.Text ' 这里添加你的业务处理逻辑,比如输出到控制台或存入集合 Console.WriteLine(columnValue) Next Next
非绑定模式(手动添加项)的遍历代码
如果你的ListView是手动添加项而非数据绑定,可使用ListViewItem类型遍历:
For Each item As ListViewItem In lsvCurrent.Items For Each subItem As ListViewItem.ListViewSubItem In item.SubItems Dim columnValue As String = subItem.Text ' 处理逻辑 Next Next
按索引直接访问指定列
若只需获取特定列的值,可通过子项索引直接访问:
For Each item As ListViewDataItem In lsvCurrent.Items ' 获取第1列(索引从0开始)的值 Dim targetColumnValue As String = item.SubItems(1).Text Next
内容的提问来源于stack exchange,提问作者Ann
相关产品推荐
相关产品推荐

