/// <summary> /// Event triggered when user really wants to delete the tpk (file) /// </summary> /// <param name="sender"></param> private async void View_deleteRecordEvent(object sender) { // Get selected layer Files subFile = (Files)_selectedLayer; // Find the layer from the image layer Layer sublayer = esriMap.AllLayers.First(x => x.Name == subFile.FileName); // Change sublayers visibility in the map if (sublayer != null) { esriMap.Basemap.BaseLayers.Remove(sublayer); } Services.FileServices.FileServices deleteLayerFile = new Services.FileServices.FileServices(); await deleteLayerFile.DeleteLocalStateFile(subFile.FilePath); //Refresh dialog GetFiles(); }
/// <summary> /// An option to reset the application and start a clean slate version /// </summary> public async void ResetAppAsync() { var loadLocalization = Windows.ApplicationModel.Resources.ResourceLoader.GetForCurrentView(); ContentDialog deleteBookDialog = new ContentDialog() { Title = loadLocalization.GetString("SettingPageButtonResetTitle"), Content = loadLocalization.GetString("SettingPageButtonResetMessage/Text"), PrimaryButtonText = loadLocalization.GetString("Generic_ButtonYes/Content"), SecondaryButtonText = loadLocalization.GetString("Generic_ButtonNo/Content") }; deleteBookDialog.Style = (Style)Application.Current.Resources["DeleteDialog"]; ContentDialogResult cdr = await deleteBookDialog.ShowAsync(); if (cdr == ContentDialogResult.Primary) { //Clear map page of any layers before deleting them, else they won't be. EventHandler settingDeleteLayerRequest = settingDeleteAllLayers; if (settingDeleteLayerRequest != null) { settingDeleteLayerRequest(this, null); } //Make a copy of database FileServices fileService = new FileServices(); string newFilePath = await fileService.SaveDBCopy(); if (newFilePath != null && newFilePath != string.Empty) { Services.FileServices.FileServices deleteService = new Services.FileServices.FileServices(); Task deleteTask = deleteService.DeleteLocalStateFileAll(); await deleteTask; //Delete local settings Services.DatabaseServices.DataLocalSettings localSettings = new DataLocalSettings(); localSettings.WipeUserInfoSettings(); Application.Current.Exit(); } } }