Imports Newtonsoft.Json Public Class Settings Public Property Categories As List(Of Category) Public Property DefaultTimezoneId As String Public Sub New() Load() End Sub Private Sub Load() If My.Settings.CategoryList IsNot Nothing AndAlso My.Settings.CategoryList.Trim.Length > 0 Then Try Categories = JsonConvert.DeserializeObject(Of List(Of Category))(My.Settings.CategoryList) Catch ex As Exception Categories = New List(Of Category) End Try Else Categories = New List(Of Category) End If If My.Settings.DefaultTimezoneId Is Nothing Then DefaultTimezoneId = TimeZoneInfo.Local.Id Else DefaultTimezoneId = My.Settings.DefaultTimezoneId End If End Sub Public Sub Save() My.Settings.CategoryList = JsonConvert.SerializeObject(Categories) My.Settings.DefaultTimezoneId = DefaultTimezoneId My.Settings.Save() End Sub End Class