/// <summary> Обработчик нажатия на кнопку перегенерации ключа шифрования </summary> private void ButtonRegenerateEncryptionKey_Click(object sender, RoutedEventArgs e) { if (WindowMessageBox.Show(FactoryWindow.GetWindowUserSettings(), Application.Current.TryFindResource(@"ViewUserSettings_CreateNewKey") as string, Application.Current.TryFindResource(@"ViewUserSettings_AlertLostCorrespondence") as string, WindowMessageBoxButonEnum.ContinueCancel, WindowMessageBoxTypeEnum.Warning) != WindowMessageBoxButonEnum.Continue) { return; } var windowPasswordBox = FactoryWindow.GetWindowPasswordBox(PasswordBoxTypeEnum.RegenerateKey); windowPasswordBox.Owner = System.Windows.Window.GetWindow(this); windowPasswordBox.ShowDialog(); if ((windowPasswordBox.ViewUserControl as ViewPasswordBox).Result) { var resultRegenerate = _viewModelUserSettings.RegenerateKeyPair(); if (resultRegenerate) { _viewModelUserSettings.ExportAviable = _viewModelUserSettings.CheckEncryptionkey(); _viewModelUserSettings.LocalSavePublicKey(); //Показ окна о генерации экрана, когда будет переделан механизм "растягивания" view на главном окне приложения, заменить здесь. WindowMain.CurrentMainWindow.GridSecurityKeyGeneratedWinidow.Visibility = Visibility.Visible; } OnCloseWindow(); } }
/// <summary> Открыть окно настроек с вкладкой на импорт ключа шифрования </summary> private void CopyFromClipBoard() { var windowUserSettings = FactoryWindow.GetWindowUserSettings(); if (windowUserSettings.ViewUserControl.DataContext is ViewModelUserSettings) { var viewModel = (ViewModelUserSettings)windowUserSettings.ViewUserControl.DataContext; viewModel.CurrentModelEnumUserSettingsGroup = viewModel.ListModelEnumUserSettingsGroup.FirstOrDefault(a => a.CodeName == "security"); viewModel.ShowImportPanel = true; windowUserSettings.Show(); windowUserSettings.Activate(); // потому что окно может быть уже открыто => нужно вывести его на первый план Visibility = Visibility.Collapsed; } }