1

我正在使用列表框从 xml 文件中获取项目,每个项目都有一个 id、名称和内容,但我只在列表框中输入名称,并将其他数据存储在字典等变量中(整数:索引,字符串:名称),并保持列表框中的项目与字典中的项目之间的关系,现在一切都很好,但是如果我在列表框中对项目进行排序(在修改名称后)它会丢失索引排序,:(

排序前!

列表框 ---------------------- 字典 -------------- -

索引 | 值 -------------- 键 | 价值

0 | 管理员 ------------------ 0 | 管理员
1 | adam.ley -------------- 1 | 亚当利
2 | jean.clift --------------- 2 | 让·克利夫特

将 adam.ley 更改为零,然后对列表进行排序!!

0 | 管理员 ------------------ 0 | 管理员
1 | jean.clift --------------- 1 | 零
2 | 零-------------------------------- 2 | 让·克利夫特

谢谢大家 :)

4

2 回答 2

1

我认为你必须对项目进行分类。

有不止一个细节。像

类会说“MyItem”具有成员(整数 id、字符串名称、字符串内容)

这将是类结构并将此项目(类)添加到列表框中这可能在 c# 中必须有类似的东西在 vb.net

如需进一步参考,请检查此链接并获得提示。 使用 ListBox 存储多条数据

于 2013-02-27T13:42:49.973 回答
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 的项目的索引!

谢谢大家!祝你今天过得愉快 ;)

于 2013-03-02T12:50:04.123 回答