/// <summary>
        ///     Initializes a new instance of the <see cref="ChangeVersionDialog" /> class.
        /// </summary>
        /// <param name="versions">The versions.</param>
        public ChangeVersionDialog(IEnumerable <IVersionInfo> versions)
            : this()
        {
            ChangeVersionDialogViewModel dataContext = (ChangeVersionDialogViewModel)this.DataContext;

            dataContext.Close   += (sender, args) => this.Close();
            dataContext.Versions = new ListCollectionView(versions.Select(o => new ChangeVersionInfo(o)).ToList());
        }
        /// <summary>
        ///     Displays the dialog used to create new versions in a versioned geodatabase.
        /// </summary>
        /// <param name="workspace"></param>
        /// <returns></returns>
        public bool DoModal(IWorkspace workspace)
        {
            ChangeVersionDialogViewModel dataContext = (ChangeVersionDialogViewModel)this.DataContext;

            dataContext.Close    += (sender, args) => this.Close();
            dataContext.Workspace = workspace;

            var hWnd = ArcMap.Application.GetNativeWindow();

            return(this.ShowDialog(hWnd).GetValueOrDefault(false));
        }
        /// <summary>
        ///     Displays the dialog used to create new versions in a versioned geodatabase.
        /// </summary>
        /// <param name="workspace">The workspace.</param>
        /// <param name="versions">The versions.</param>
        /// <returns></returns>
        public bool DoModal(IWorkspace workspace, IEnumerable <IVersionInfo> versions)
        {
            ChangeVersionDialogViewModel dataContext = (ChangeVersionDialogViewModel)this.DataContext;

            dataContext.Close    += (sender, args) => this.Close();
            dataContext.Workspace = workspace;
            dataContext.Versions  = new ListCollectionView(versions.Select(o => new ChangeVersionInfo(o)).ToList());

            var hWnd = ArcMap.Application.GetNativeWindow();

            return(this.ShowDialog(hWnd).GetValueOrDefault(false));
        }