コード例 #1
0
        private void BrowseForArchive(string archiveName)
        {
            var dialog = new OpenFileDialog()
            {
                CheckFileExists = true,
                Multiselect     = false,
                Filter          = $"{archiveName}|{archiveName}|All Files (*.*)|*.*",
                Title           = $"Search for: {archiveName}"
            };

            if (dialog.ShowDialog() != DialogResult.OK || !File.Exists(dialog.FileName))
            {
                return;
            }

            var doMatch = _modListBuilder.ValidateArchiveAgainstPath(archiveName, dialog.FileName);

            if (!doMatch)
            {
                // Raise notification here
            }

            _modListBuilder.AddMissingArchive(archiveName, dialog.FileName);
            MissingArchives.Remove(archiveName);

            if (MissingArchives.Count == 0)
            {
                IsValidationComplete = true;
            }
        }
コード例 #2
0
        private async void ValidateDirectory()
        {
            var directoryBrowser = new VistaFolderBrowserDialog()
            {
                Description            = "Select a folder to analyze.",
                UseDescriptionForTitle = true
            };

            if (directoryBrowser.ShowDialog() == true)
            {
                await Task.Factory.StartNew(() =>
                {
                    MissingArchives = new ObservableCollection <string>(_modListBuilder.AnalyzeDirectory(MissingArchives.ToList(), directoryBrowser.SelectedPath));
                });

                IsValidationComplete = MissingArchives.Count == 0;
            }
        }