/// <summary> /// Loads a configuration from disc /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnLoadConfiguration_Click(object sender, EventArgs e) { OpenFileDialog loadFileDialog = new OpenFileDialog { Filter = "Meter Configuration File|*.meter", Title = "Load Meter Configuration" }; string fileName = loadFileDialog.FileName; if (loadFileDialog.ShowDialog() == DialogResult.OK) { ShowInfo(string.Format("Loading configuration file {0} from disc..", fileName)); StreamReader sr = new StreamReader(fileName); string json = sr.ReadToEnd(); sr.Close(); ShowInfo(string.Format("Configuration file {0} successfully loaded from disc", fileName)); meters.Clear(); MeterList meterList = (MeterList)JsonConvert.DeserializeObject(json, typeof(MeterList)); meters.AddRange(meterList); updateGUI(); } }