你的运气了,在.net中的列表视图不具有等效的方法。好消息是编写你自己的代码比较简单。如果你只在一个地方使用它,你可以使用LINQ来做到这一点,而不必声明你自己的方法,otoh如果你使用它很多,然后一个扩展方法将允许你“添加”到列表视图类。
虽然ListView class不包含由一个列表项的Tag属性搜索中的FindItem方法或等效的方法,这是很容易做到使用LINQ(演员用来使列表项集合一个IEnumerable)
lvBracket.Items.Cast(Of ListItem).FirstOrDefault(
Function(li) Object.Equals(li.Tag, CStr(sKeyBracket))
相当于
或使用VB's null coalesence operator(一个叫以2个参数):
xList = If(lvBracket.Items.Cast(Of ListItem).FirstOrDefault(
Function(li) Object.Equals(li.Tag, CStr(sKeyBracket)),
lvBracket.Items(1))
虽然我真的怀疑你的意思lvBracket.Items(0)
...
如果你想让它作为一种方法,那么extension method是很容易的写:
Public Function FindByTag(this as ListView, tagStr as String) As ListItem
Return this.Items.Cast(Of ListItem).FirstOrDefault(
Function(li) CStr(li.Tag) = tagStr)
End Function
,并作为lvBracket.FindByTag(CStr(sKeyBracket))
是的,我知道。但我的问题是。我可以在vb.net 2010 vb6.0中使用什么是“lvwtag” – Umar
没有看到上下文我不知道什么lvwtag或确切地你正在试图找到。在.net中有一个ListViewItem,它与VB6中的ListItem不一样。您将需要比较文档以确定它。我会看看我刚刚添加的链接,看它是否有任何帮助 –
@MarkHall:lvwtag是一个枚举,它用于告诉vb6 listview FindItem方法,该搜索应该基于标记完成。 – jmoreno