private void buttonAddDevice_Click(object sender, RoutedEventArgs e)
        {
            var device = new Device();
            var dialog = new EditDeviceDialog(device, "Add");

            dialog.Owner = this;

            var result = dialog.ShowDialog();

            if (result.HasValue && result.Value)
            {
                this.Config.Devices.Add(dialog.Device);
                UpdateDevices();
                listDevices.SelectedItem = dialog.Device;
            }
        }
        private void buttonEditDevice_Click(object sender, RoutedEventArgs e)
        {
            var device = (Device)listDevices.SelectedItem;

            if (device != null)
            {
                var dialog = new EditDeviceDialog(device, "Edit");
                dialog.Owner = this;

                var result = dialog.ShowDialog();
                if (result.HasValue && result.Value)
                {
                    var index = this.Config.Devices.IndexOf(device);
                    this.Config.Devices.Remove(device);
                    this.Config.Devices.Insert(index, dialog.Device);
                    UpdateDevices();
                    listDevices.SelectedItem = dialog.Device;
                }
            }
        }