public async Task CompareIntegrity() { string folderToScan; System.Windows.Forms.FolderBrowserDialog folderDialog = new System.Windows.Forms.FolderBrowserDialog(); folderDialog.ShowNewFolderButton = false; folderDialog.Description = "Select the folder you want to scan"; if (folderDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK) { folderToScan = folderDialog.SelectedPath; } else { return; } string integrityFile; Microsoft.Win32.OpenFileDialog fileDialog = new Microsoft.Win32.OpenFileDialog(); fileDialog.DefaultExt = ".integritul"; fileDialog.Filter = "Integritul Database Files (*.integritul)|*.integritul"; fileDialog.Title = "Select your integritul file"; if (fileDialog.ShowDialog() == true) { integrityFile = fileDialog.FileName; } else { return; } ProgressDialogController progressDialog = await ShowProgressAsync("Please Wait", String.Empty); var progressHandler = new Progress <string>(value => { progressDialog.SetMessage(value); }); var progress = progressHandler as IProgress <string>; IEnumerable <ResultOfComparison> differences = new List <ResultOfComparison>(); await Task.Run(() => { differences = CompareFolder(folderToScan, integrityFile, progress); }); await progressDialog.CloseAsync(); if (differences.Any()) { IShell shell = IoC.Get <IShell>(); shell.ChangeScreen(new ResultOfComparisonViewModel(differences)); } else { await ShowMessageAsync("All is equal", "Noting has changed", MessageDialogStyle.Affirmative); } }
public void Home() { IShell shell = IoC.Get <IShell>(); shell.ChangeScreen(new HomeViewModel()); }