This nine part video series walks developer from building a new project all the way to a functional Blog Reader, covering topics, like asynchronous programming, navigation, app bar, customize styling, adapting to different layouts, and managing app lifecycle and state.
In the final video of the series, we'll use the SuspensionManager class to save the navigation state and session data, like the selected blog post in the SplitPage file as well as customize the app splash screen.Step-by-Step tutorial from dev.windows.com Blog Reader complete code
In this video, we'll adapt all of the pages in the Blog Reader app to work in full screen, filled, portrait, and snapped layouts.Step-by-Step tutorial from dev.windows.com Blog Reader complete code
In this video, we'll build a custom data template using XAML to format how we display the month, date, and year to match the styling of the Windows blog.Step-by-Step tutorial from dev.windows.com Blog Reader complete code
In this video, we'll build custom styles for the ItemsPage and a DateTime ValueConverter class that we'll use in Part 7 to format a custom data template for the items page.Step-by-Step tutorial from dev.windows.com Blog Reader complete code
In this video, you'll add an AppBar, learn how to use the Segoe UI Symbol font for app icons, and how to add basic animations and transitions.Step-by-Step tutorial from dev.windows.com Blog Reader complete code
In this video, we'll add all of the pages to the Blog Reader, including the ItemsPage which lists all of the blogs, the SplitPage which lists all of the blogs posts for the selected blog, and the Detail page which shows the select blog post in a WebView control.Step-by-Step tutorial from dev.windows.com Blog Reader complete code
In this video, we'll review the asynchronous programming model for Windows 8 apps, and how to use the async/await keywords to download RSS feeds asynchronously.Step-by-Step tutorial from dev.windows.com Blog Reader complete code
In this video we'll build a set of classes to represent a blog post, a blog, and a collection of blogs that download RSS or Atom feeds from the Web using the SyndicationClient class.Step-by-Step tutorial from dev.windows.com Blog Reader complete code Changes in the video as of 3/25/2013Change URLs to use blogs.windows instead of windowsteamblogs. For feed1, change it to use the new SkyDrive blog in place of the deleted Developers blog. public async Task GetFeedsAsync() { Task feed1 = GetFeedAsync("http://blogs.windows.com/skydrive/b/skydrive/atom.aspx"); Task feed2 = GetFeedAsync("http://blogs.windows.com/windows/b/windowsexperience/atom.aspx"); Task feed3 = GetFeedAsync("http://blogs.windows.com/windows/b/extremewindows/atom.aspx"); Task feed4 = GetFeedAsync("http://blogs.windows.com/windows/b/business/atom.aspx"); Task feed5 = GetFeedAsync("http://blogs.windows.com/windows/b/bloggingwindows/atom.aspx"); Task feed6 = GetFeedAsync("http://blogs.windows.com/windows/b/windowssecurity/atom.aspx"); Task feed7 = GetFeedAsync("http://blogs.windows.com/windows/b/springboard/atom.aspx"); Task feed8 = GetFeedAsync("http://blogs.windows.com/windows/b/windowshomeserver/atom.aspx"); // There is no Atom feed for this blog, so use the RSS feed. Task feed9 = GetFeedAsync("http://blogs.windows.com/windows_live/b/windowslive/rss.aspx"); Task feed10 = GetFeedAsync("http://blogs.windows.com/windows_live/b/developer/atom.aspx"); Task feed11 = GetFeedAsync("http://blogs.windows.com/ie/b/ie/atom.aspx"); Task feed12 = GetFeedAsync("http://blogs.windows.com/windows_phone/b/wpdev/atom.aspx"); Task feed13 = GetFeedAsync("http://blogs.windows.com/windows_phone/b/wmdev/atom.aspx"); Task feed14 = GetFeedAsync("http://blogs.windows.com/windows_phone/b/windowsphone/atom.aspx"); In GetFeedAsync, don't add 'http://windowsteamblog.com' to the item id when processing an Atom feed. They've updated the id format, so we can just use the id now. if (feed.SourceFormat == SyndicationFormat.Atom10) { if (item.Content != null && item.Content.Text != null) { feedItem.Content = item.Content.Text; } if (item.Id != null) { feedItem.Link = new Uri("http://windowsteamblog.com" + item.Id); // just use feedItem.Link = new Uri(item.Id); Check for null values in GetFeed and GetItem. var matches = _feedDataSource.Feeds.Where((feed) => feed != null && feed.Title.Equals(title)); var matches = _feedDataSource.Feeds .Where(group => group != null) .SelectMany(group => group.Items).Where((item) => item.Title.Equals(uniqueId));
This is the first video in a 9 part video series that walks through creating a Windows Store Blog Reader app. This quick video introduces the series and gives you an overview the content that will be covered.Step-by-Step tutorial from dev.windows.com Blog Reader complete code