如何在VB.Net中的ComboBox项目选择上使用字符串数组填充标签

时间:2014-09-19 03:39:32

标签: arrays vb.net visual-studio-2012 combobox labels

我在VB.Net中有一个应用程序,我正在尝试使用数组中的一些字符串数据填充标签。我有一个ComboBox,它将一些状态作为索引集合/值。当我在组合框中选择一个特定的值时,我想从指定的数组中提取字符串数据,并将标签作为“可点击的链接浏览器窗口”填充。我迷失了这个,但这里是我所拥有的我的代码存根:

Private Sub cboSelectState_SelectedIndexChanged(sender As Object, e As EventArgs) Handles   cboSelectState.SelectedIndexChanged

    'Create a string array
    Dim AlabamaCities() As String = {"http://www.rolltide.com/", "http://www.crimsontidehoops.com/", "http://centralalabamapride.org/"}
    Dim strAlabama As String

    'Populate label with the array data, on a particular value selection in combo box.
    If cboSelectState.SelectedValue("Georgia") Then
        strAlabama = CStr(AlabamaCities(3))
        lblLinkOutput.Text = strAlabama
    End If

End Sub

所以当我在我的组合框中选择Alabama时,我希望标签显示:

http://www.rolltide.com
http://www.crimsontidehoops.com
http://centralalabamapride.org

链接将从标签中单击,并在单击时填充在同一选项卡中。我还没有尝试过可点击的链接部分,我会尝试一下这个。

我知道从门开始可能很糟糕。但我正试图让形式下来获取知识并计划一个更大的项目,并在我想到它时完成更好的事情。感谢您的知识和帮助。

1 个答案:

答案 0 :(得分:0)

首先,使用Dictionary来存储数据是有意义的。状态名称将是键,值将是URL数组。然后,您将在ComboBox中显示密钥,并在进行选择时使用所选密钥从Dictionary获取相应的值。

此时,如果您需要可点击的链接,则不会使用Label。您应该使用TableLayoutPanel作为容器,然后为表中的每个URL添加一个LinkLabel。然后,您可以对所有LinkClicked事件使用单个处理程序。