Dictionary(Of String, List(Of String))
国から都市へのマッピングを含むにデータをロードします。
次に、選択した国を辞書で調べて、その値を繰り返し処理します。
後者の方法の例を次に示します。これは、ディクショナリデータがすでにロードされていることを前提としています(明らかに、コードに値をハードコーディングしないでください)。
' As a private Form variable:
Private cities As New Dictionary(Of String, List(Of String))()
' … Load data in Form_Load.
' In the citiesCombo.SelectedValueChanged event of the combo box:
cboCity.Items.Clear()
For Each city As var In cities(cboCountry.Text)
cboCity.Items.Add(city)
Next
おもちゃのデータを使ってこれをテストしたいだけの場合は、次のようにします。
Private cities As New Dictionary(Of String, List(Of String))() From { _
{"England", New List(Of String)() From {"London", "Darthmouth", "Oxford", "Cambridge"}}, _
{"Wales", New List(Of String)() From {"Cardiff", "Swansea"}}, _
{"Scotland", New List(Of String)() From {"Edinburgh", "Glasgow", "Aberdeen"}} _
}