info@fvg-informatica.it

Tendina automatica nazioni in VB.NET

VB.NET
31/10/2019

Alzi la mano chi non ha mai avuto la necessità di aggiungere su una web application la classica drop down list con l’elenco delle Nazioni.

La prima tentazione è quella di interrogare Google in cerca di un webservice pubblico che fornisca tale lista, possibilmente aggiornato. Tuttavia, non ne ho mai trovato uno free, completo e facilmente integrabile con un controllo DropDownList di ASP.NET. Anche la soluzione di trovare la lista già completa scritta a mano da qualcuno è poco affidabile e difficilmente manutenibile.

La soluzione c’è e ce la fornisce direttamente il Framework di .NET, ecco il codice corrispondente!

Dim ddl1 As DropDownList = LA NOSTRA DROPDOWNLIST
Dim sd1 As New SortedDictionary(Of String, String)
Dim ci1() As CultureInfo
ci1 = CultureInfo.GetCultures(CultureTypes.AllCultures)
For Each ci2 As System.Globalization.CultureInfo In ci1
  Try
    Dim ri1 As RegionInfo = New RegionInfo(ci2.LCID)
    If Not sd1.ContainsKey(ri1.EnglishName) Then
      sd1.Add(ri1.EnglishName, ri1.TwoLetterISORegionName)
    End If
  Catch ex As Exception
  End Try
Next
For Each kvp1 As KeyValuePair(Of String, String) In sd1
  Dim li1 As New ListItem
  li1.Text = kvp1.Key
  li1.Value = kvp1.Value
  ddl1.Items.Add(li1)
Next

Si tratta sostanzialmente di iterare attraverso le culture messe già a disposizione del sistema. Da notare che l’oggetto RegionInfo contiene tutte le informazioni relative alla specifica cultura. Con lo stesso metodo possiamo quindi creare tendine per le monete, i sistemi metrici, ecc….

Davvero una grande facilitazione!

  • Argomenti

  • Gabriele Pala, 2012-2019 P.IVA 01137470314 - C.F. PLAGRL77S16L424T info@fvg-informatica.it Strada delle Acacie, 5/A - Staranzano (GO) Privacy & Cookies