private void ApplicationBarIconButton_Click(object sender, EventArgs e) { try { AbstractTransfer Transfer = new DownloadTransfer { TransferUrl = Source.Text, Path = Path.Text, Filename = Filename.Text }; App.TransferViewModel.Add(Transfer); if (NavigationService.CanGoBack) { NavigationService.GoBack(); } } catch (ArgumentException exc) { MessageBox.Show(exc.Message, "Error", MessageBoxButton.OK); } }
private void PageListDownloaded(object sender, DownloadStringCompletedEventArgs e) { lock (this) { if (e.Error != null) { MessageBox.Show(e.Error.Message); return; } TextReader textreader = new StringReader(e.Result); XmlReader reader = XmlReader.Create(textreader, new XmlReaderSettings { CheckCharacters = false }); XDocument loadedData = XDocument.Load(reader); var mangas = from series in loadedData.Descendants("page") select series; foreach (XElement series in mangas.ToArray<XElement>()) { string ChapterID = (string)series.Element("chapter_id"); string SeriesID = (string)series.Element("series_id"); string PageNum = (string)series.Element("page_number"); string SeriesTitle = _Series[int.Parse(SeriesID) - 1].Title; string Title = SeriesTitle + " - Page " + PageNum; string URL = (string)series.Element("image_source"); // Add pages Library.Page NewPage = new Library.Page{ Name = Title }; DownloadTransfer Transfer = new DownloadTransfer { TransferUrl = URL, Path = "/" + HttpUtility.UrlEncode(SeriesTitle)+"/"+ChapterID, Filename = PageNum + ".jpg" }; App.TransferViewModel.Add(Transfer); NewPage.Transfer = Transfer; App.LibraryViewModel.Add(NewPage); Transfer.ExternalReference = NewPage.UID.ToString(); } NavigationService.Navigate(new Uri("/MangaDemo/MangaDownloadList.xaml", UriKind.RelativeOrAbsolute)); } }
/// <summary> /// Constructor for the Application object. /// </summary> public App() { // Global handler for uncaught exceptions. UnhandledException += Application_UnhandledException; // Standard Silverlight initialization InitializeComponent(); // Phone-specific initialization InitializePhoneApplication(); // Show graphics profiling information while debugging. if (System.Diagnostics.Debugger.IsAttached) { // Display the current frame rate counters. Application.Current.Host.Settings.EnableFrameRateCounter = true; // Show the areas of the app that are being redrawn in each frame. //Application.Current.Host.Settings.EnableRedrawRegions = true; // Enable non-production analysis visualization mode, // which shows areas of a page that are handed off to GPU with a colored overlay. //Application.Current.Host.Settings.EnableCacheVisualization = true; // Disable the application idle detection by setting the UserIdleDetectionMode property of the // application's PhoneApplicationService object to Disabled. // Caution:- Use this under debug mode only. Application that disables user idle detection will continue to run // and consume battery power when the user is not using the phone. PhoneApplicationService.Current.UserIdleDetectionMode = IdleDetectionMode.Disabled; } // Specify the local database connection string. string DBConnectionString = "Data Source=isostore:/Transfer.sdf"; // Create the database if it does not exist. using (TransferDataContext<AbstractTransfer> db = new TransferDataContext<AbstractTransfer>(DBConnectionString)) { if (db.DatabaseExists() == false) { // Create the local database. db.CreateDatabase(); AbstractTransfer MilkyWay = new DownloadTransfer { TransferUrl = @"http://www.cfa.harvard.edu/image_archive/2009/1/hires.jpg", Path = "/space", Filename = "milky_way_highres.jpg" }; // Prepopulate with a page db.Transfers.InsertOnSubmit(MilkyWay); // Save pages to the database. db.SubmitChanges(); } } // Create the ViewModel object. _TransferViewModel = new TransferViewModel<AbstractTransfer>(DBConnectionString); // Query the local database and load observable collections. _TransferViewModel.LoadCollectionsFromDatabase(); // Transfer manager _TransferManager = new TransferManager.TransferManager(_TransferViewModel); // Create the database if it does not yet exist. using (LibraryDataContext db = new LibraryDataContext("isostore:/Library.sdf")) { if (db.DatabaseExists() == false) { // Create the database. db.CreateDatabase(); } } // Create the LibraryViewModel object. _LibraryViewModel = new LibraryViewModel("isostore:/Library.sdf"); // Query the local database and load observable collections. _LibraryViewModel.LoadCollectionsFromDatabase(); }