Better Navigation in Xamarin.Forms

By Jesse Liberty and Eric Grover

There are many ways to navigate from page to page in Xamarin.Forms.  The most obvious is to use the built in navigation service.  However, if you are serious about MVVM, the built in navigation presents quite a problem.

Say I’m on page1 and I want to navigate to page2, from a method in page1ViewModel.  How do I do that? And how do I pass data from Page1ViewModel to page2ViewModel?

Most solutions spend way too much time coupling the VM to the View.  Yuck.

XLabs has an elegant solution.  I use it in conjunction with MVVM Light and it works like a charm.

With XLab navigation, you navigate from Page1ViewModel directly to Page2ViewModel (!) , and Page2 is displayed and tied automagically to its view model.   From Page2 on, you no longer have to set the BindingContext, it is set to the ViewModel without your doing a thing.  That is exactly how navigation should work.

Getting going isn’t obvious at first glance, however, so this posting will walk you through a detailed but simple example.

Continue reading

Posted in Essentials, Navigation, Xamarin | 3 Comments

Away From The Keyboard

I was pleased and proud to be interviewed on Away From The Keyboard, talking about my history in the industry.  Makes a good bookend with my talk with Shawn Wiawayfromthekeyboardldermuth on Hello World.

Great fun.

Posted in Essentials | Leave a comment

iPhone 7+ – First Look

What can I say that you don’t already know?  phone7plus

[Updated Sept 23, 09:19:

To reset the iPhone 7, hold the power button and the volume down button until you see the apple

The battery does seem to last much longer, but beware, it takes much longer to charge ]

The packaging is Apple standard (read beautiful), upgrading from my 6S+ was a piece of cake, activating the phone could not have been easier, and all my stuff was restored without a hitch.

Verizon is buying my old phone for $300, which offsets the new price by quite a bit.

One feature Apple is highlighting is that you can get the phone wet (and it is dust resistant as well).   Not swimming wet.  Not salt-water wet, but you can be out in the rain, or drop it in the toilet and it keeps on ticking.  That  actually matters a lot.

Continue reading

Posted in Essentials, Observations, Opinion, Product Reviews | Leave a comment

MacOs Sierra – first look

[Updated 11:26 EDT]

macOS Sierra is heresierra (goodbye Mac OSX)

It has only a few new features, most notable of which is Siri on the Mac.

Siri works ok, not great.  And even when she is fully  understanding my requests, there is only so much she can do.  Great for looking up faces in your photos, good for looking up things on the web, not so great for making phone calls, and why would I want her to open Word when I can do so myself in 1/2 the time?

A perhaps more important feature is the ability to copy and paste from the Mac to the phone.  That is very cool — not needed often, but nice when you do need it.

Continue reading

Posted in Essentials | Leave a comment

Yet Another Podcast #164 – Azure Mobile Apps with Chris Risner

Chris is a Principle Software Development Engineer at Microsoft.  There he

Chris Risner 2012

Chris Risner 2012

works within the Developer Experience team where he leads a team focusing on making non-traditional Microsoft technology work well with Microsoft technology.

Posted in Azure, Xamarin | Tagged | Leave a comment

Yet Another Podcast #163: James Montemagno and Xamarin Cycle 8

James Montemagno is a Principal Program Manager on the Xamarin team at james-montemagnoMicrosoft. He has been a .NET developer since 2005 working in a wide range of industries including game development, printer software, and web services.

Prior to becoming a Principal Program Manager, James was a professional mobile developer and has now been crafting apps since 2011 with Xamarin.

He blogs code regularly on his personal blog, and on the weekly development podcast Merge Conflict. You can also find him on his Channel 9 TV Show or on Twitter

Posted in Android, Essentials, iOS, Xamarin | Tagged | 1 Comment

My Favorite Mac Utilities

I have experimented with a number of different utilities.  I’m going to list some of them hMacBookProere, and then invite you to please add your preferred utilities that I haven’t tried yet, and why you like them.

The following are not in any particular order

My favorite go-to browser is Chrome, though I do keep a number of others around for testing Web applications

Speaking of Google, I love Google Photos.  Its ability to search without tagging is amazing.

Continue reading

Posted in Essentials | 2 Comments

Yet Another Podcast #162 What’s New in C# 7 with Mads Torgersen

Mads Torgersen is a Program Manager at Microsoft, responsible for the evolution of C#. Exported_ - 1

Posted in Essentials | Tagged | Leave a comment

Xamarin Utility in 5 Minutes with Plugins

[This article was restored]

I needed a quick and dirty program to create quick notes and mail them to myself.  You can see how this would be useful;  a way to jot down notes while away from the computer, with some high likelihood that I’ll see and remember the note when I get back.

I created a Xamarin.Forms application, and dropped an editor onto the page.  Here’s the complete XAML page:


I implemented the event handler in code behind (this project was too small for MVVM),

  voidHandle_Completed(objectsender, System.EventArgse)
   string message;

The magic here is accomplished by the Messaging plugin, which will let you make a phone call, send an SMS message or, in this case, send an email.  I could use some of the advanced features, like adding an attachment, but don’t need to.  I just want to send my text.  The three parameters are:

  • Recipient email address
  • Subject line
  • Body of message

 Pierce Boggan wrote up how to use the plugin in an excellent Xamarin blog article.

Hey! Presto! instant app.  But, the simulator can’t send email, so if you want to try it out, you need to do so on a device, which means you need to provision your phone.  Don’t panic, step by step directions are provided here.

Complete development time: 4 minutes.


But as I say, it is quick and dirty.  If I want to put it in the store, I still have some work to do.  First, I really don’t want all your notes, so I need an easy setup so that you can enter your own email address.  Second, it is ugly. Third, I need images, lots of images for the app store.  If you want to take that on, let me know and we can share the glory (and who knows, maybe advertising revenue).
Posted in Xamarin | Leave a comment

Yet Another Podcast #161 – David Britch

David Britch is a Developer/Writer at Xamarin, and has previously spent many years working on projects for different groups at Microsoft.

David has authored and contributed to a range of recent software development publications including books, guidance documentation, reference implementations, whitepapers, videos, HOLs, and ILT courses.

Blog –



Posted in Essentials, Xamarin | Tagged | Leave a comment

Tech Bash 2016

Save $50 with code LIBERTY


Posted in Testing, Xamarin | Leave a comment

Yet Another Podcast #160 – Mobile Technology Overview – Sam Basu

Sam Basu is a technologist, author, speaker, Microsoft MVP, gadget-lover and Developer Advocate for Progress. With a long developer background, he now spends much of his time advocating modern web/mobile/cloud development platforms on Microsoft/Telerik stacks. His spare times call for travel, fast cars, cricket and culinary adventures with the family. You can find him on the internet as @samidip.

Square HeadshotNativeScript –
Kendo UI –
Telerik UI for Xamarin –
Telerik Platform –

Screen Shot 2016-08-12 at 1.36.38 PM





Posted in Angular 2, ASP.NET Core, Mobile, Xamarin | Tagged | Leave a comment