public async void OfflineAddToJSON(string rand) { StorageFile sampleFile = await localFolder.GetFileAsync("OfflinePages.json"); var JSONData = await Windows.Storage.FileIO.ReadTextAsync(sampleFile); OfflineClass OfflineListJSON = JsonConvert.DeserializeObject <OfflineClass>(JSONData); Uri ArgsUri = new Uri(WebWeb.Source.ToString()); string host = ArgsUri.Host; string x; x = await WebWeb.InvokeScriptAsync("eval", new string[] { "document.title;" }); OfflineListJSON.OfflineWebsites.Add(new OfflineJSON() { FavIconJSON = " https://icons.duckduckgo.com/ip2/" + host + ".ico", ImageUrlJSON = rand + ".jpg", HeaderJSON = x });; var SerializedObject = JsonConvert.SerializeObject(OfflineListJSON, Formatting.Indented); await Windows.Storage.FileIO.WriteTextAsync(sampleFile, SerializedObject); var JSONDatas = await FileIO.ReadTextAsync(sampleFile); LoadOffline(); }
public async void LoadOffline() { StorageFile sampleFile = await localFolder.GetFileAsync("OfflinePages.json"); var JSONData = await FileIO.ReadTextAsync(sampleFile); OfflineClass OfflineListJSON = JsonConvert.DeserializeObject <OfflineClass>(JSONData); OfflineList.Clear(); foreach (var item in OfflineListJSON.OfflineWebsites) { OfflineList.Add(new OfflineJSON() { HeaderJSON = item.HeaderJSON, ImageUrlJSON = item.ImageUrlJSON, FavIconJSON = item.FavIconJSON, }); } Offlines.ItemsSource = null; UnloadObject(Offlines); FindName("Offlines"); Offlines.ItemsSource = OfflineList; HomePage.HomeGrid.ItemsSource = null; HomePage.HomeGrid.ItemsSource = OfflineList; }
private async void LoadOfflines() { OfflineList = new List <OfflineJSON>(); string filepath = @"Assets\OfflinePages.json"; StorageFolder folder = Windows.ApplicationModel.Package.Current.InstalledLocation; StorageFile file = await folder.GetFileAsync(filepath); // error here var JSONData = "e"; try { if ((bool)localSettings.Values["FirstFavRun"] == true) { localSettings.Values["FirstFavRun"] = false; StorageFile sfile = await localFolder.CreateFileAsync("OfflinePages.json", CreationCollisionOption.ReplaceExisting); await FileIO.WriteTextAsync(sfile, JSONData); JSONData = await Windows.Storage.FileIO.ReadTextAsync(file); } else { localSettings.Values["FirstFavRun"] = false; StorageFile ssfile = await localFolder.GetFileAsync("OfflinePages.json"); JSONData = await FileIO.ReadTextAsync(ssfile); } } catch { localSettings.Values["FirstFavRun"] = false; StorageFile sssfile = await localFolder.CreateFileAsync("OfflinePages.json", CreationCollisionOption.ReplaceExisting); await FileIO.WriteTextAsync(sssfile, JSONData); JSONData = await Windows.Storage.FileIO.ReadTextAsync(file); } localSettings.Values["FirstFavRun"] = false; StorageFile sampleFile = await localFolder.CreateFileAsync("OfflinePages.json", CreationCollisionOption.ReplaceExisting); await FileIO.WriteTextAsync(sampleFile, JSONData); OfflineClass OfflineListJSON = JsonConvert.DeserializeObject <OfflineClass>(JSONData); foreach (var item in OfflineListJSON.OfflineWebsites) { OfflineList.Add(new OfflineJSON() { HeaderJSON = item.HeaderJSON, ImageUrlJSON = item.ImageUrlJSON, FavIconJSON = item.FavIconJSON, }); } Offlines.ItemsSource = OfflineList; }
private async void DeleteOffline(object sender, RoutedEventArgs e) { StorageFile sampleFile = await localFolder.GetFileAsync("OfflinePages.json"); var SenderFramework = (FrameworkElement)sender; var DataContext = SenderFramework.DataContext; OfflineJSON SenderPost = DataContext as OfflineJSON; // List<Favourites> OpenList = Offlines.ItemsSource as List<Favourites>; // OpenList.Remove(SenderPost); var JSONData = await Windows.Storage.FileIO.ReadTextAsync(sampleFile); OfflineClass OfflineListJSON = JsonConvert.DeserializeObject <OfflineClass>(JSONData); //i had a better way to do it before but accidently permanently deleted it and cant remember how. This method is shorter and simpler OfflineJSON FoundItem = OfflineListJSON.OfflineWebsites.Find(x => x.ImageUrlJSON == SenderPost.ImageUrlJSON); OfflineListJSON.OfflineWebsites.Remove(FoundItem); var SerializedObject = JsonConvert.SerializeObject(OfflineListJSON, Formatting.Indented); await Windows.Storage.FileIO.WriteTextAsync(sampleFile, SerializedObject); var JSONDatas = await FileIO.ReadTextAsync(sampleFile); LoadOffline(); }