public RegistryConnectionDialogViewModel()
        {
            //Load up the saved connections
            _connections = RegistryConnectionsFactory.Load();

            SelectedRegistry =
                _connections.Connections.FirstOrDefault(r => r.Registry == _connections.SelectedRegistry);

            if (SelectedRegistry == null)
            {
                SelectedRegistry = _connections.Connections.FirstOrDefault();
            }

            ConnectCommand = new RelayCommand(() => ConnectAsync().IgnoreAsync(), CanConnect);
        }
        private void Save()
        {
            var connections = _connections.Connections.ToList();

            if (SelectedRegistry == null)
            {
                //Need to add one!
                var connection = new RegistryConnectionModel
                {
                    Registry = Registry,
                    IsAnonymous = IsAnonymous,
                    Username = Username
                };

                if (RememberPassword)
                {
                    connection.Password = Password;
                }

                connections.Add(connection);
            }
            else
            {
                SelectedRegistry.IsAnonymous = IsAnonymous;
                SelectedRegistry.Username = Username;

                if (RememberPassword)
                {
                    SelectedRegistry.Password = Password;
                }
            }

            var toSave = new RegistryConnectionsModel()
            {
                Connections = connections.ToArray()
            };

            if (SelectedRegistry == null)
            {
                toSave.SelectedRegistry = Registry;
            }
            else
            {
                toSave.SelectedRegistry = SelectedRegistry.Registry;
            }

            RegistryConnectionsFactory.Save(toSave);
        }