/// <summary>
        /// Shows the according dialog for the control.
        /// </summary>
        /// <returns></returns>
        protected override async Task ShowDialogAsync()
        {
            OpenDirectoryDialogArguments args = null;

            if (DialogArgs != null)
            {
                args = new OpenDirectoryDialogArguments(DialogArgs);
            }
            else
            {
                args = new OpenDirectoryDialogArguments();
            }

            if (!string.IsNullOrWhiteSpace(Directory) && System.IO.Directory.Exists(Directory))
            {
                args.CurrentDirectory = Directory;
            }

            OpenDirectoryDialogResult result = null;

            if (DialogHost != null)
            {
                result = await OpenDirectoryDialog.ShowDialogAsync(DialogHost, args);
            }
            else
            {
                result = await OpenDirectoryDialog.ShowDialogAsync(DialogHostName, args);
            }

            if (result != null && result.Confirmed)
            {
                Directory = result.DirectoryInfo.FullName;
            }
        }
Example #2
0
        public static async Task <OpenDirectoryDialogResult> ShowDialogAsync(string dialogHostName, double?width    = null, double?height = null,
                                                                             string currentDirectory                = null,
                                                                             bool showHiddenFilesAndDirectories     = false, bool showSystemFilesAndDirectories      = false,
                                                                             DialogOpenedEventHandler openedHandler = null, DialogClosingEventHandler closingHandler = null)
        {
            OpenDirectoryDialog dialog = InitDialog(width, height, currentDirectory, showHiddenFilesAndDirectories, showSystemFilesAndDirectories);

            return(await DialogHost.Show(dialog, dialogHostName, openedHandler, closingHandler) as OpenDirectoryDialogResult);
        }
Example #3
0
        private static OpenDirectoryDialog InitDialog(double?width, double?height,
                                                      string currentDirectory,
                                                      bool showHiddenFilesAndDirectories, bool showSystemFilesAndDirectories)
        {
            OpenDirectoryDialog dialog = new OpenDirectoryDialog();

            InitDialog(dialog, width, height, currentDirectory, showHiddenFilesAndDirectories, showSystemFilesAndDirectories);

            return(dialog);
        }
Example #4
0
        /// <summary>
        /// Shows a new <see cref="OpenDirectoryDialog" />.
        /// </summary>
        /// <param name="dialogHost">The <see cref="DialogHost" /></param>
        /// <param name="args">The arguments for the dialog initialization</param>
        /// <returns></returns>
        public static async Task <OpenDirectoryDialogResult> ShowDialogAsync(DialogHost dialogHost, OpenDirectoryDialogArguments args)
        {
            OpenDirectoryDialog dialog = InitDialog(
                args.Width,
                args.Height,
                args.CurrentDirectory,
                args.ShowHiddenFilesAndDirectories,
                args.ShowSystemFilesAndDirectories
                );

            return(await dialogHost.ShowDialog(dialog, args.OpenedHandler, args.ClosingHandler) as OpenDirectoryDialogResult);
        }
Example #5
0
        private static OpenDirectoryDialog InitDialog(double?width, double?height,
                                                      string currentDirectory,
                                                      bool createNewDirectoryEnabled,
                                                      bool showHiddenFilesAndDirectories, bool showSystemFilesAndDirectories,
                                                      bool switchPathPartsAsButtonsEnabled, bool pathPartsAsButtons)
        {
            OpenDirectoryDialog dialog = new OpenDirectoryDialog();

            InitDialog(dialog, width, height, currentDirectory, showHiddenFilesAndDirectories, showSystemFilesAndDirectories, createNewDirectoryEnabled, switchPathPartsAsButtonsEnabled, pathPartsAsButtons);

            return(dialog);
        }
Example #6
0
        /// <summary>
        /// Shows a new <see cref="OpenDirectoryDialog" />.
        /// </summary>
        /// <param name="dialogHostName">The name of the <see cref="DialogHost" /></param>
        /// <param name="args">The arguments for the dialog initialization</param>
        /// <returns></returns>
        public static async Task <OpenDirectoryDialogResult> ShowDialogAsync(string dialogHostName, OpenDirectoryDialogArguments args)
        {
            OpenDirectoryDialog dialog = InitDialog(
                args.Width,
                args.Height,
                args.CurrentDirectory,
                args.CreateNewDirectoryEnabled,
                args.ShowHiddenFilesAndDirectories,
                args.ShowSystemFilesAndDirectories,
                args.SwitchPathPartsAsButtonsEnabled,
                args.PathPartsAsButtons
                );

            return(await DialogHost.Show(dialog, dialogHostName, args.OpenedHandler, args.ClosingHandler) as OpenDirectoryDialogResult);
        }