private static void CheckForEmptyCover(BookTile tile) { if (tile.ImageSource == null) { tile.BookNameTextBlock.VerticalAlignment = VerticalAlignment.Top; } }
public void CreateTileForBook(string bookId) { if (string.IsNullOrWhiteSpace(bookId)) throw new ArgumentException("bookId is invalid"); var book = _bookRepository.Get(bookId); var uri = _navigationService.UriFor<ReadPageViewModel>() .WithParam(vm => vm.BookId, bookId) .WithParam(vm => vm.ToLastReadPage, true) .BuildUri(); string title = book.Title; BitmapImage bmp; using (var storage = IsolatedStorageFile.GetUserStoreForApplication()) { if (storage.FileExists(ModelExtensions.GetBookCoverPath(book.BookID))) { bmp = new BitmapImage() { CreateOptions = BitmapCreateOptions.None }; using (var file = storage.OpenFile(ModelExtensions.GetBookCoverPath(book.BookID), FileMode.Open)) { bmp.SetSource(file); title = string.Empty; } } else bmp = null;//.UriSource = new Uri("/Resources/Icons/tile.png", UriKind.RelativeOrAbsolute); } BookTile tile = new BookTile(); tile.ImageSource = bmp; tile.Title = title; tile.UpdateLayout(); LiveTileHelper.CreateOrUpdateTile(new RadExtendedTileData() {VisualElement = tile}, uri); }