예제 #1
0
        public string ShowSelectFileDialog <TParentViewModel>(bool multiselect, FileSelectionFilter fileSelectionFilter)
        {
            var selectFileDialogData = new SelectFileDialogData {
                MultiSelect = multiselect, FileSelectionFilter = fileSelectionFilter
            };

            var handler = ShowSelectFileDialogRequested;

            handler?.Invoke(this, selectFileDialogData);

            return(selectFileDialogData.SelectedFilePath);
        }
예제 #2
0
        public string ShowSelectFileDialog <TParentViewModel>(bool multiselect, FileSelectionFilter fileSelectionFilter)
        {
            using (var selectFileDialog = new OpenFileDialog())
            {
                selectFileDialog.Multiselect = multiselect;

                selectFileDialog.Filter = GetFilterString(fileSelectionFilter);

                selectFileDialog.ShowDialog();

                return(selectFileDialog.FileName);
            }
        }
예제 #3
0
        private static string GetFilterString(FileSelectionFilter fileSelectionFilter)
        {
            var filter = fileSelectionFilter.Title + "|";

            return(fileSelectionFilter.Extensions.Aggregate(filter, (current, extension) => current + ("*." + extension + ";")));
        }