我正在使用listbox从xml文件中获取项目,每个项目都有id,name和content, 但我把列表框中的名字放入名单,并将其他数据存储在变量中,如字典(整数:索引,字符串:名称),并保持列表框中的项目与字典中的项目之间的关系,现在一切都很好,但如果我对项目进行排序(在修改名称后)它会丢失索引顺序,:(
排序之前!
listbox ---------------------------------- dictionary ----------- ----
索引|值-------------------------- key |值
0 | admin ------------------------------ 0 |管理员
1 | adam.ley -------------------------- 1 | adam.ley
2 | jean.clift --------------------------- 2 | jean.clift
将adam.ley更改为零,并对列表进行排序!!
0 | admin ------------------------------ 0 |管理员
1 | jean.clift --------------------------- 1 |零
2 |零-------------------------------- 2 | jean.clift
答案 0 :(得分:1)
我认为你必须上课。
有多个细节。 像
类会说“MyItem”有成员 (整数id, 字符串名称, 字符串内容)
这将是类结构,并将此项(类)添加到列表框中 在c#中有可能在vb.net中有这样的东西
进一步参考检查此链接并获得提示。 Using ListBox to store multiple pieces of data
答案 1 :(得分:1)
所以在我按照以下方式创建一个类之后:
Public Class ListItem
Private _Id As Integer
Private _Name As String
' Initialize the object.
Public Sub New(ByVal Id As Integer, ByVal Name As String)
_Id = Id
_Name = Name
End Sub
' Return the object's Name.
Public Overrides Function ToString() As String
Return _Name
End Function
' Return the object's Id.
Public Function Id() As Integer
Return _Id
End Function
End Class
将新项目添加到列表框:
ListBox1.Items.Add(New ListItem(Id, Name))
它完美无缺:)!
但我需要的是获取具有Id = 3的项目的索引,例如!!
谢谢大家!祝你有愉快的一天;)