/// <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;
            }
        }
Пример #2
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);
        }
Пример #3
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);
        }
Пример #4
0
 /// <summary>
 /// Copy constructor
 /// </summary>
 /// <param name="args"></param>
 public OpenDirectoryDialogArguments(OpenDirectoryDialogArguments args)
     : base(args)
 {
 }