1

我对编码相当陌生。我正在编写 Visual Basic 教程,但我不理解代码中的一行。下面是代码。

    Public Class Form1
    Private Sub lstData_SelectedIndexChanged(sender As Object, e As EventArgs) Handles lstData.SelectedIndexChanged
        Dim strName As String
        Dim strFavoriteColor As String
        strName = lstData.Items(lstData.SelectedIndex).ToString
        Select Case strName
            Case "Bryan"
                strFavoriteColor = "Madras Yellow"
            Case "Ashley"
                strFavoriteColor = "Sea Blue"
            Case "Jenifer"
                strFavoriteColor = "Morning Mist"
            Case "Eddie"
                strFavoriteColor = "Passionate Purple"
            Case "Katelyn"
                strFavoriteColor = "Red"
        End Select
        MessageBox.Show(strName & "'s favorite color is " & strFavoriteColor, "Select Demo")
    End Sub
End Class

我不明白的行是strName = lstData.Items(lstData.SelectedIndex).ToString

我不知道.Items的意义是什么。我也无法理解括号内的代码及其用途。

我找到的最接近答案的是以下网站。我希望有人能以更容易理解的方式向我解释。

4

2 回答 2

3

ItemsItemCollectionfor the Listbox,它是一个对象集合,因此它可以存储整个对象以及简单的文本。是从 0 开始的该SelectedIndex集合的元素索引。因此,如果您Items(selectedIndex)获得该集合的元素。

于 2013-05-11T03:12:10.453 回答
1

lstData.Items(lstData.SelectedIndex).ToString

  • lstData是一个下拉列表。

  • lstData.Items()将返回其中存在的项目集合(Bryan,Ashley,Jenifer,Eddie,Katelyn) dropdownlist

  • 现在看到该集合中的每个项目都有unique index这样的

    0->布莱恩,1->阿什莉,2->珍妮弗,3->艾迪,4->凯特琳

  • 虽然lstData.Items()将返回整个集合,但lstData.items(index)将返回具有我们传递的索引的特定项目。

    例如:lstData.items(0)将返回 Bryan

  • 现在来lstData.SelectedIndex。此属性将返回我们在运行时选择的项目的索引。

    例如:如果从下拉列表中选择的项目是 Jenifer。然后lstData.SelectedIndex将返回 2。

  • 考虑一下,您已从下拉列表 lstData 中选择了 Ashley。

    现在代码lstData.SelectedIndex将返回 1。

    因此代码lstData.Items(lstData.SelectedIndex)将被评估为 lstData.Items(1)。

    正如我们所知lstData.Items(1),将返回阿什利

  • 顺便说一句,.ToString()将以字符串表示形式返回其实例。

于 2013-05-11T05:10:05.200 回答