//Advance Images Download Completed Event private void AdvanceDownloadCompleteA(object sender, DownloadDataCompletedEventArgs e) { BitmapImage image = new BitmapImage(); image.BeginInit(); image.StreamSource = new MemoryStream(e.Result); image.EndInit(); image1 = image; currentImage.Source = image1; WinConfigWrapper.SetWallPaper(image, wallpaperStyle); }
//Control panel is deactivated void controlPanel_Deactivated(object sender, EventArgs e) { //Get config info from control panel on deactivation query = controlPanel.SearchTerm; timer.Interval = new TimeSpan(0, 0, controlPanel.PictureTimeout); wallpaperStyle = controlPanel.PictureStyle; WinConfigWrapper.SetWallPaperStyle(wallpaperStyle); //If the query has changed then reload if (previousQuery != query) { RESET_IMAGE_FLAG = true; persistentImageCount = 0; AdvanceImages(); previousQuery = query; } }
//Advance next image only private void AdvanceDownloadAsync(string url) { WebClient client = new WebClient(); client.DownloadDataCompleted += AdvanceDownloadComplete; WinConfigWrapper.SetWallPaper(image2, wallpaperStyle); try { client.DownloadDataAsync(new Uri(url)); } catch (Exception ex) { //General catch all //Silently fail } }