grahama grahama

Niner since 2012


  • UWP-079 - Hero Explorer - Cortana Integration

    Hi Bob,

    A fantastic series that's helped me a lot. Please keep up the good work - we need much more training content because everything is moving so fast. Maybe an ASP.NET 5 course next?

    By the way, I just ran the HeroExplorer app and your alter-ego popped up: Bob, Agent of Hydra! Not sure about the description though -- "A cowardly young man, Bob was persuaded into joining the criminal organisation HYDRA ...".


  • Special Movember Episode - ASP.NET ​Authenticat​ion using ASP.NET Identity

    Does anyone have an example of how to use the ASP.Net Identity with Windows Authentication? I can't find anything about this scenario anywhere ...

  • Part 35: Where to go from here

    Fantastic series Bob, many thanks to you and your team, and to Channel 9 for putting this online.

  • Part 33: Working with the Lock Screen to Display an Image

    The link to the MSDN article about the "Lock Screen background for Windows Phone 8" is missing from the transcript - here it is so you don't have to type it...

  • Part 27: Navigating and Passing Data to the ​Search​Results Page

    It was a good exercise for me to sort it out myself anyway, and I was so fired up to get it working! 

  • Part 27: Navigating and Passing Data to the ​Search​Results Page

    Hi Bob,

    I'm loving this series - it's so satisfying getting these apps to work with your assistance!

    However, I just thought I'd point out a problem which you didn't pick up at the point where you grew your hockey beard. I picked up your error with passing in the latitude twice (I did tell you at the time but you didn't listen!), but there was still a more serious problem which will trip people up, as it did me.

    After I set the DataContext in the SearchResults_Loaded method of SearchResults.xaml.cs, I ran the app and it still didn't work. After a bit of digging, I realized that the SearchResults_Loaded method needed to be set to async, as the method FlickrImage.GetFlickrImages which it calls is defined as async, and therefore you also need to call it with the await keyword. So you need:

    private async void SearchResults_Loaded(object sender, RoutedEventArgs e) {
        var images = await FlickrImage.GetFlickrImages(flickrApiKey, _latitude, _longitude);
        DataContext = images;

    In the video, this is not shown - but in the transcript below the video and the source code download, it is shown. However, those following just the video (like me, most of the time) would not necessarily pick this up.

    Hope this helps others following along with what is an absolutely cracking series.



  • Working with Paragraphs and Text - 05

    Great intro Bob - as usual clear and concise. Just one comment - the anchor tag's name attribute is obsolete in HTML5, but you can instead link to any tag with an id attribute. In this case, put id="bottom" on the h1 element. This is in keeping with the semantic aims of HTML5 - a named anchor tag is an artificial element which adds no additional meaning to the document.