Imports Infragistics.Win
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
' Get an array list of the time zones on this computer
Dim timeZones As ArrayList = Infragistics.Win.Utilities.GetTimeZones()
If timeZones Is Nothing Then Return
' Iterate the array list and display information on each time zone.
Dim i As Int32
Dim crlf As String = vbCrLf
Dim tab As String = vbTab
For i = 0 To timeZones.Count - 1
Dim tzi As TimeZoneInfo = timeZones(i)
Dim info As String = String.Empty
info += "Time Zone: " + tzi.StandardName + crlf
info += tab + "Daylight Name: " + tzi.DaylightName + crlf
info += tab + "Display Name: " + tzi.DisplayName + crlf
info += crlf
info += tab + "UTC Offset: " + tzi.UtcOffset.TotalHours.ToString() + " hours" + crlf
info += tab + "Additional Daylight Saving Time UTC Offset: " + tzi.DaylightUtcOffset.TotalHours.ToString() + " hours" + crlf
info += tab + "Additional Standard Time UTC Offset: " + tzi.StandardUtcOffset.TotalHours.ToString() + " hours" + crlf
If tzi.DaylightDate <> DateTime.MinValue Then
info += tab + "Daylight savings time begins on " + tzi.DaylightDate.ToLongDateString() + crlf
End If
If tzi.StandardDate <> DateTime.MinValue Then
info += tab + "Standard time begins on " + tzi.StandardDate.ToLongDateString() + crlf
End If
info += crlf
info += tab + "The current date is " + tzi.Today.ToLongDateString() + crlf
info += tab + "The current time is " + tzi.Now.ToShortTimeString() + crlf
info += crlf
Dim isDST As Boolean = tzi.IsDaylightSavingTime(DateTime.Now)
info += tab + "Daylight savings time is "
If Not isDST Then
info += "not "
End If
info += "in effect." + crlf
Dim time As DateTime = New DateTime(DateTime.Today.Year, DateTime.Today.Month, DateTime.Today.Day, 9, 0, 0)
info += tab + "At 9AM (actual time) in the current time zone, the local time is " + tzi.ToLocalTime(time).ToShortTimeString() + crlf
Debug.WriteLine(info)
Next
End Sub