Building Metro style apps with XAML and C++

Download this episode

Download Video


With the introduction of Metro style apps for C++ developers, Microsoft now brings the XAML UI platform to native code!  I will take you through a lap around creating a Metro style app in XAML and C++.  I'll introduce the fundamentals of the XAML platform in WinRT and how C++ developers can easily write applications with a consistent, touch-friendly UI framework.  I'll walk through the developer experience in Visual Studio for creating these apps, noting how (and why) code is structured in the project system.  I will also demonstrate some of the powerful benefits of XAML in databinding and custom control development. Finally, I will introduce the developer tools that enable you to design XAML in a graphical way within Visual Studio as well as Blend.

For more information, check out this course on Microsoft Virtual Academy:





Available formats for this video:

Actual format may change based on video formats available and browser capability.

    The Discussion

    • User profile image

      I expected to find a video here...

    • User profile image

      I expected to find a video here...

      If you go to the live feed and scroll back to about hour 2:15 or so, you'll see Tim's talk

    • User profile image

      I expected to find a video here...

      Expressionless me too!

    • User profile image

      I'm a bit confused. 

      Microsoft strongly suggest building Metro Applications in HTML/JS, not XAML.

      So the question is why should we use a depreciated product(even thought I may want to)?

    • User profile image

      At 40:15... isn't it a bit un-intuitive for search to only search those apps when the user clicks on the app?  What if the user doesn't know which app their search term might apply to, or has simply forgotten?

    • User profile image
      peter cho

      I like the tile interface.
      Windows 8 look is very bold beautiful and fluid.
      is a newcomer, young and attractive
      it's perfectly suited for tablets thanks to the low power drain and low heat generated by systems running on ARM processor !!;)
      im so happy for codename:Windows 8 and i think Windows 95 was a big deal for users and developers alike.
      Overall, this release feels smoother, faster, snappier, and more stable.
      Metro does rock on desktop and laptop!
      with this your luck can be perfect.
      now with touch you can have all your requirements plus even more.
      My prediction is clear and I know that there will be a much perfect luck for the whole W(P)8(RT) universe than Microsoft can imagine.I respect Microsoft for doing that. My opinion on these metro hating freaks is that they are all people who don't like to change
      and dont forget Thank for feedback mark as answer and log uri

    • User profile image

      Perhaps this demo should be redone to avoid the "out of disk space" errors that kept disrupting the presentation.

    • User profile image

      Another session on a similar topic here:


    • User profile image

      There is something i don't understand. They say Native c++ code but all the api need to to be ref newed and passed by ^. This is the terminology of CLR... Also ^ and ref new is not standart c++.

      If all the ^ and ref new are not CLR what is the difference?



    • User profile image

      @monamimani: WinRT is true Native code, but have too similar things with technology provided in managed .NET - the WinRT library at %SystemRoot%\System32\WinMetadata have the same file format as .NET Assemblies.

      For example this is a screenshot (direct link)

      of examination's Dependency Walker of three binaries of the same code from Charles Petzold - Programming_Windows__Sixth_Edition, but written in three language - C++/CX, C# and VB.NET.

      There are no mscoree.dll (.NET core) in C++/CX variant(HelloCode_CCX.exe).

    Comments closed

    Comments have been closed since this content was published more than 30 days ago, but if you'd like to send us feedback you canĀ Contact Us.