コード例 #1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="SaveFileDialogWrapper"/> class.
        /// </summary>
        /// <param name="settings">The settings for the save file dialog.</param>
        public SaveFileDialogWrapper(SaveFileDialogSettings settings)
        {
            dialog = new SaveFileDialog();
            sync   = new SaveFileDialogSettingsSync(dialog, settings);

            // Update dialog
            sync.ToDialog();
        }
コード例 #2
0
        private void SaveFile()
        {
            var settings = new SaveFileDialogSettings
            {
                Title = "This Is The Title",
                InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments),
                Filter = "Text Documents (*.txt)|*.txt|All Files (*.*)|*.*",
                CheckFileExists = false
            };

            bool? success = dialogService.ShowSaveFileDialog(this, settings);
            if (success == true)
            {
                Path = settings.FileName;
            }
        }
コード例 #3
0
        public void ToDialog()
        {
            // Arrange
            var dialog   = new SaveFileDialog();
            var settings = new SaveFileDialogSettings();
            var sync     = new SaveFileDialogSettingsSync(dialog, settings);

            settings.AddExtension     = !settings.AddExtension;
            settings.CheckFileExists  = !settings.CheckFileExists;
            settings.CheckPathExists  = !settings.CheckPathExists;
            settings.CreatePrompt     = !settings.CreatePrompt;
            settings.CustomPlaces     = new List <FileDialogCustomPlace>(new[] { new FileDialogCustomPlace(Guid.NewGuid()) });
            settings.DefaultExt       = "txt";
            settings.DereferenceLinks = !settings.DereferenceLinks;
            settings.FileName         = "SomeFile.txt";
            settings.FileNames        = new[] { "SomeFile.txt" };
            settings.Filter           = "Text Documents (*.txt)|*.txt|All Files (*.*)|*.*";
            settings.FilterIndex      = 2;
            settings.InitialDirectory = @"C:\temp";
            settings.OverwritePrompt  = !settings.OverwritePrompt;
            settings.SafeFileName     = "SomeFile.txt";
            settings.SafeFileNames    = new[] { "SomeFile.txt" };
            settings.Title            = "Some Title";
            settings.ValidateNames    = !settings.ValidateNames;

            // Act
            sync.ToDialog();

            // Assert
            Assert.That(dialog.AddExtension, Is.EqualTo(settings.AddExtension));
            Assert.That(dialog.CheckFileExists, Is.EqualTo(settings.CheckFileExists));
            Assert.That(dialog.CheckPathExists, Is.EqualTo(settings.CheckPathExists));
            Assert.That(dialog.CreatePrompt, Is.EqualTo(settings.CreatePrompt));
            Assert.That(dialog.CustomPlaces, Is.EqualTo(settings.CustomPlaces));
            Assert.That(dialog.DefaultExt, Is.EqualTo(settings.DefaultExt));
            Assert.That(dialog.DereferenceLinks, Is.EqualTo(settings.DereferenceLinks));
            Assert.That(dialog.FileName, Is.EqualTo(settings.FileName));
            Assert.That(dialog.FileNames, Is.EqualTo(settings.FileNames));
            Assert.That(dialog.Filter, Is.EqualTo(settings.Filter));
            Assert.That(dialog.FilterIndex, Is.EqualTo(settings.FilterIndex));
            Assert.That(dialog.InitialDirectory, Is.EqualTo(settings.InitialDirectory));
            Assert.That(dialog.OverwritePrompt, Is.EqualTo(settings.OverwritePrompt));
            Assert.That(dialog.SafeFileName, Is.EqualTo(settings.SafeFileName));
            Assert.That(dialog.SafeFileNames, Is.EqualTo(settings.SafeFileNames));
            Assert.That(dialog.Title, Is.EqualTo(settings.Title));
            Assert.That(dialog.ValidateNames, Is.EqualTo(settings.ValidateNames));
        }
コード例 #4
0
        /// <summary>
        /// Initializes a new instance of the <see cref="SaveFileDialogWrapper"/> class.
        /// </summary>
        /// <param name="settings">The settings for the save file dialog.</param>
        public SaveFileDialogWrapper(SaveFileDialogSettings settings)
        {
            this.settings = settings ?? throw new ArgumentNullException(nameof(settings));

            saveFileDialog = new SaveFileDialog
            {
                AddExtension     = settings.AddExtension,
                CheckFileExists  = settings.CheckFileExists,
                CheckPathExists  = settings.CheckPathExists,
                CreatePrompt     = settings.CreatePrompt,
                DefaultExt       = settings.DefaultExt,
                FileName         = settings.FileName,
                Filter           = settings.Filter,
                FilterIndex      = settings.FilterIndex,
                InitialDirectory = settings.InitialDirectory,
                OverwritePrompt  = settings.OverwritePrompt,
                Title            = settings.Title
            };
        }
コード例 #5
0
        public void ToSettings()
        {
            // Arrange
            var dialog   = new SaveFileDialog();
            var settings = new SaveFileDialogSettings();
            var sync     = new SaveFileDialogSettingsSync(dialog, settings);

            dialog.FileName    = "SomeFile.txt";
            dialog.FilterIndex = 2;

            // Act
            sync.ToSettings();

            // Assert
            Assert.That(settings.FileName, Is.EqualTo(dialog.FileName));
            Assert.That(settings.FileNames, Is.EqualTo(dialog.FileNames));
            Assert.That(settings.FilterIndex, Is.EqualTo(dialog.FilterIndex));
            Assert.That(settings.SafeFileName, Is.EqualTo(dialog.SafeFileName));
            Assert.That(settings.SafeFileNames, Is.EqualTo(dialog.SafeFileNames));
        }
コード例 #6
0
        /// <summary>
        /// Initializes a new instance of the <see cref="SaveFileDialogWrapper"/> class.
        /// </summary>
        /// <param name="settings">The settings for the save file dialog.</param>
        public SaveFileDialogWrapper(SaveFileDialogSettings settings)
        {
            if (settings == null)
                throw new ArgumentNullException(nameof(settings));

            this.settings = settings;

            saveFileDialog = new SaveFileDialog
            {
                AddExtension = settings.AddExtension,
                CheckFileExists = settings.CheckFileExists,
                CheckPathExists = settings.CheckPathExists,
                CreatePrompt = settings.CreatePrompt,
                DefaultExt = settings.DefaultExt,
                FileName = settings.FileName,
                Filter = settings.Filter,
                InitialDirectory = settings.InitialDirectory,
                OverwritePrompt = settings.OverwritePrompt,
                Title = settings.Title
            };
        }
コード例 #7
0
 public void SetUp()
 {
     dialog   = new SaveFileDialog();
     settings = new SaveFileDialogSettings();
     sync     = new SaveFileDialogSettingsSync(dialog, settings);
 }
コード例 #8
0
 public SaveFileDialogSettingsSync(SaveFileDialog dialog, SaveFileDialogSettings settings)
 {
     this.dialog   = dialog ?? throw new ArgumentNullException(nameof(dialog));
     this.settings = settings ?? throw new ArgumentNullException(nameof(settings));
 }