コード例 #1
0
        public override void Execute(object?parameter)
        {
            var lastOpenedFile = _appSettings.LastOpenedFile;

            var initialDirectory = string.Empty;

            if (!string.IsNullOrEmpty(lastOpenedFile))
            {
                try
                {
                    initialDirectory = Path.GetDirectoryName(lastOpenedFile);
                }
                catch
                {
                    // ignored
                }

                if (!string.IsNullOrEmpty(initialDirectory))
                {
                    try
                    {
                        if (!Directory.Exists(initialDirectory))
                        {
                            initialDirectory = string.Empty;
                        }
                    }
                    catch
                    {
                        initialDirectory = string.Empty;
                    }
                }
            }

            var openFileDialog = new OpenFileDialog
            {
                InitialDirectory = initialDirectory,
                FileName         = lastOpenedFile,
                Filter           = LocalizationManager.Instance.Current.Keys.OpenFile_Filter
            };

            var currentMainWindow = Application.Current.MainWindow;

            if (openFileDialog.ShowDialog(currentMainWindow) != true)
            {
                return;
            }

            var filePath = openFileDialog.FileName;

            _fileOpenerService.SafeOpenFile(filePath);
        }
コード例 #2
0
        public override void Execute(object?parameter)
        {
            var lastOpenedFile = _appSettings.LastOpenedFile;

            _fileOpenerService.SafeOpenFile(lastOpenedFile);
        }