0

ファイルの保存ダイアログ ボックスを作成することに感銘を受けました。すべて完了しましたが、既に存在するファイルを保存しようとしたときにダイアログ ボックスを表示し、オーバーライド、キャンセル、またはいいえのオプションを表示したいと考えています。ユーザーが [いいえ] をクリックすると、saveFodlerDialog が再び表示され、プロセスが繰り返されます。しかし、私はそれを実装する方法がわかりません。

以下に関連するコードを貼り付けます。

private void New_Project(object sender, RoutedEventArgs e)
    {

        var saveFolderDlg = new System.Windows.Forms.FolderBrowserDialog();

        System.Windows.Forms.DialogResult dlgResult = saveFolderDlg.ShowDialog();

        if (dlgResult == System.Windows.Forms.DialogResult.OK)
        {

            saveFolderDlg.RootFolder = Environment.SpecialFolder.Desktop;
            saveFolderDlg.ShowNewFolderButton = true;
            string projectPath = saveFolderDlg.SelectedPath;
            string prjFileName = System.IO.Path.GetFileName(projectPath);
            string newPath = System.IO.Path.Combine(projectPath, prjFileName);

            if (!System.IO.File.Exists(newPath+".rnd"))
            {
                CreateNewProejct(projectPath);//works fine
            }
            else
            {
                string msgBoxTxt = "Project already exists, Override?";
                MessageBoxButton button = MessageBoxButton.YesNoCancel;
                string caption = "New porject";
                MessageBoxImage icon = MessageBoxImage.Warning;
                MessageBoxResult result = MessageBox.Show(msgBoxTxt,caption, button, icon);

                switch (result)
                {
                    case MessageBoxResult.No:
                        //what to do here to restart the process of saving project
                        break;                           
                    case MessageBoxResult.Cancel:
                        break;
                    case MessageBoxResult.Yes:
                        CreateNewProejct(projectPath);
                        break;
                }
            }

        }
    }
4

1 に答える 1