The Top 10 Things I Learned About WinRT/HTML as a Silverlight Developer Michael Crump | Telerik.

Slides:



Advertisements
Similar presentations
SILVERLIGHTSHOW.NET WEBINARS SERIES Michael Crump, July 3rd, 2012
Advertisements

Introduction to the Windows Runtime (WinRT) Ben Dewey Tallan, Inc.
Essentials of Developing Windows Phone Apps Chinthaka Dissanayake Tech Lead Exilesoft.
Platform for building Windows Store Apps Agu Suur Frontend Developer Axinom.
1 1 Silverlight is a web browser plug-in. 2 2 There are two versions September 2007~October 2008 V2 is backwards compatible & where you’d start today.
DEV392: Extending SharePoint Products And Technologies Through Web Parts And ASP.NET Clint Covington, Program Manager Data And Developer Services - Office.
Michael S. Scherotter Microsoft Corporation
Development of mobile applications using PhoneGap and HTML 5
Advanced Windows 8 Apps Using JavaScript Jump Start Exam Prep Advanced Windows 8 Apps Using JavaScript Jeremy Foster Microsoft Developer Evangelist.
Windows.Net Programming Series Preview. Course Schedule CourseDate Microsoft.Net Fundamentals 01/13/2014 Microsoft Windows/Web Fundamentals 01/20/2014.
Creating Business Workflow Using SharePoint Designer 2007 Presented by Tarek Ghazali IT Technical Specialist Microsoft SQL Server MVP Microsoft SQL Server.
Win8 on Intel Programming Course Modern UI : Features Cédric Andreolli Intel Software.
Platform for Metro Style Apps Michael Platt Senior Director Microsoft Corp.
JavaScript & jQuery the missing manual Chapter 11
Title slide to be used at the start of a module. Developing Mobile Apps Roland Guijt
Building Windows 8 Apps with HTML & JavaScript Jaime Rodriguez Principal
ASP.NET + Ajax Jesper Tørresø ITNET2 F08. Ajax Ajax (Asynchronous JavaScript and XML) A group of interrelated web development techniques used for creating.
Introduction to Silverlight. Slide 2 What is Silverlight? It’s part of a Microsoft Web platform called Rich Internet Applications (RIA) There is a service.
Building Metro style apps with HTML and JavaScript Paul Gusmorino Lead Program Manager Microsoft Corporation.
Windows Store apps with HTML + Facebook integration
Angelo Chan Kamran Bilgrami. Agenda ● WinJS - What and Why ● Modern Apps ● WinRT Architecture ● Demos o Controls o Data Bindings o Program LifeCycle Management.
WinRT and Windows 8 Sergey Barskiy Principal Consultant, Magenic.
Lesley Bross, August 29, 2010 ArcGIS 10 add-in glossary.
An Introduction to Silverlight Matt Harrington Developer Evangelist, Microsoft October 20, 2011.
Windows Presentation Foundation. Agenda Introduction Developing Applications WPF and WF interoperability Custom Controls Styles and Templates Data Binding.
Virtual techdays INDIA │ Nov 2010 Developing Office Biz Application using WPF on Windows 7 Sarang Datye │ Sr. Consultant, Microsoft Sridhar Poduri.
Silverlight Hitesh Trivedi Computer Science B.Tech A-Sec J.I.E.T.
Windows 8 Hot or Not Piotr Włodek. Agenda MetroCharms Contracts WinRT App Execution Environment Motion Summary.
Building Metro style apps with HTML and JavaScript Paul Gusmorino Lead Program Manager Microsoft Corporation.
Studio for WinRT XAML Russ Senior Developer Evangelist Greg Product Manager
Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies
Microsoft SharePoint Server 2010 for the Microsoft ASP.NET Developer Yaroslav Pentsarskyy
NOTE: To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image. WEB.
The Windows Runtime (WinRT) is the shared runtime and API space used by store apps across the Windows platform (phone and client) 5 Common WinRT.
Are you getting the benefits from ASP.NET and AJAX? Introduction to the CTC ASP.NET Webforms Generator.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Windows Store apps… lots of choices Windows Store Apps Communication & Data Application Model Devices & Printing WinRT APIs Graphics & Media JavaScript.
More exercises with C# Fateme Rajabi #W6. Add an image to your project Right click on your project name in solution explorer Add -> Existing item -> browse.
Michael Hofer Senior Consultant Microsoft Corporation.
Windows 8 for Existing.NET Developers Tim Heuer Program Manager Windows Developer Experience Microsoft Corporation.
Unleash the Power of jQuery Learning & Development Team Telerik Software Academy.
05 | Integrating JavaScript and MVC 4 Jon Galloway | Tech Evangelist Christopher Harrison | Head Geek.
What web developers need to know when building Metro style apps Scott Dickens Principal Program Manager Lead Microsoft Corporation DEV352.
Windows 8: XAML or HTML? Karl Davies-Barrett CEE DPE Tech Lead, Microsoft 
0 Developing for Windows 10 Tony Champion Champion DS.
Understanding Mobile Devices, Interactions, and Tools Lesson 1.
Agenda Steps of App Building The Runtime Environment Managing App Data Debug and Test an App Validate an App Publish an App to a Store Packaging Apps.
Three Tales of Three Friends Iris Classon | Telerik | Dotnet Mentor.
Build Hybrid Mobile Apps with Ionic, Angular, & Cordova Brian
Working in a Mobile App Development Environment Lesson 2.
ClickOnce Deployment (One-click Deployment)
Office 365 Development July 2014.
Office 365 Development July 2014.
Platform for Metro Style Apps
TechEd /26/2018 3:42 AM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
The Transition to Modern Office Add-in Development
Build Windows 10 UWP MVVM Apps with Prism
What web developers need to know when building Metro style apps
Introduction to Silverlight
The Application Lifecycle
Metro style apps using XAML: Make your app shine
Metro style apps using XAML: What you need to know
Build /2/2018 © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
Search: integrating into the Windows 8 search experience
Build data-driven collection and list apps using ListView in HTML5
Office 365 Development.
Platform for Metro style Apps
Silverlight 2 Mike Taulty Developer & Platform Group Microsoft Ltd
ClickOnce Deployment (One-click Deployment)
Blazor A new framework for browser-based .NET apps Ryan Nowak
Presentation transcript:

The Top 10 Things I Learned About WinRT/HTML as a Silverlight Developer Michael Crump | Telerik

Introduction Michael Crump Microsoft MVP, MCPD XAML Evangelist,

SO YOU’RE A SILVERLIGHT DEVELOPER…NOW WHAT?

#1: Starting with the Fundamentals Bullet 1 Bullet 2 Bullet 3 Bullet 4 Bullet 5 Bullet 6

Fundamentals Silverlight Hosted inside a web browser via plug-in. SL Apps can run on Windows/Mac even Linux. You can use C#/VB and XAML to develop applications. XNA – (partial support) Available in SL5. Uses.NET Framework Can use any version of Visual Studio to develop for it. Built primary for mouse/keyboard input. Windows Store Runs on top of WinRT inside Windows 8. Windows Store Applications can only run in Windows 8. You can use C#/VB/C++/XAML or HTML5/JS/CSS3. XNA removed. Direct3D available in C++ apps. Uses.NET Framework 4.5. Can only develop for it using VS2012 and Windows 8. Built primary for touch input. (No Chrome)

#2: Application Lifecycle App Launched Running App Terminated App

Silverlight User Request Webpage HTML Page tag loads plug-in Plug-in downloads XAP file and reads manifest Create instance of Application Class Fire Application Start up Event Completed page rendering.

Windows 8 Running App Running App Suspended App Suspended App suspending Terminated App Terminated App Low Memory Code gets to run No code runs App not running resuming User Launches App Splash screen

#3: XML Namespaces You only declare the namespace (never the assembly) and you should use "using" instead of "clr-namespace"

#3: XML Namespaces Silverlight <UserControl x:Class="DiggSample.Page" xmlns=" xmlns:x=" xmlns:Digg="clr-namespace:DiggSample"> Windows Store <UserControl x:Class="DiggSample.MainPage" xmlns=" xmlns:x=" xmlns:Digg="using:DiggSample">

#3: XML Namespaces Silverlight xmlns:ad="clr- namespace:Microsoft.Advertising.Mobile.UI;assembly=Mi crosoft.Advertising.Mobile.UI" Windows Store xmlns:ad="using:Microsoft.Advertising.WinRT.UI"

#3: Code Namespaces (cont…) The majority of changes occur in the UI related classes. System.Windows -> Windows.UI.Xaml

#3: Code Namespaces cont. Silverlight using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; Windows Store using Windows.UI.Xaml; using Windows.UI.Xaml.Controls; using Windows.UI.Xaml.Data; using Windows.UI.Xaml.Documents; using Windows.UI.Xaml.Input; using Windows.UI.Xaml.Media; using Windows.UI.Xaml.Media.Imaging; using Windows.UI.Xaml.Navigation; using Windows.UI.Xaml.Shapes;

SL5 vs WinRT Comparison by NS

SL5 #3: Code Namespaces (cont.) WinRT

#4: Making WebRequest WebClient has been removed from WinRT. Instead, you can now use HttpClient or WinJS.xhr. Service calls are now handled asynchronously. Callbacks such as IAsyncResult will need to be re-written.

Asynchronous Explained JavaScript is a single-threaded language. Asynchronous APIs in the Windows Library for JavaScript and Windows Runtime are represented in JavaScript as promises. A promise is an object. The most frequently used method on a promise object is then, which takes three parameters: a function to call when the promise completes successfully, a function to call when the promise completes with an error, and a function to provide progress information. WinJS.xhr is a wrapper for XMLHttpRequest that provides an easy way to download web content in your Windows Store app using JavaScript.

DEMO WebClient and WinJS.xhr

#5: Storage

File I/O Silverlight IsolatedStorage – Can do anything. Read/Write a file to Documents Folder, etc via Open/SaveFileDialog or by using Elevated Trust (SL4) Read/Write a file to the local HDD possible via Open/SaveFileDialog or Full Trust (SL5) will not require user intervention. Windows Store IsolatedStorage – Can do anything. Read/Write a file to Documents folder, etc if you indicate it in the application manifest or use File and Folder Picker API. Read/Write a file to the local HDD possible via FilePicker only!

DEMO Files Reading and Writing in WinJS

#6: Navigation

Silverlight <navigation:Frame x:Name="ContentFrame" Style="{StaticResource ContentFrameStyle}" Source="/Home" Navigated="ContentFrame_Navigated" NavigationFailed="ContentFrame_NavigationFailed"> this.NavigationService.Navigate(new Uri("/Page1.xaml", UriKind.Relative));

Windows 8 WinJS.Navigation.navigate(location, initialState).done( /* Your success and error handlers */); The location to navigate to. Generally the location is a string describing a location, such as "home". A user-defined object that represents the navigation state that may be accessed through state.

#7: Controls

Silverlight Controls - MIA Calendar ChildWindow DataGrid DataPager DescriptionViewer MultiScaleImage OpenFileDialog RichTextBox SaveFileDialog TabControl TabItem TreeView Validation WebBrowser

WinJS controls SettingsFlyout Flyout Appbar Flipview SemanticZoom Listview Menu Rating Slide does not include all WinJS controls (Tooltip, ViewBox, ToggleSwitch, HTMLControl, etc.) DatePicker

DEMO WinJS Controls

#8: Animations

Silverlight Animations Animation Easing allows you to apply built in animation functions to your Silverlight controls. The result is a variety of animation effects that make your controls move in a more realistic way.

WinJS Animations Animation Library – FREE! Theme Transitions – animate loading, unloading or changing location on the screen. Theme Animations – build to run on user interaction and you must trigger them. You can create custom animations as well.

DEMO WinJS Animations

#9: Freebies

Charms Charms are a way of preparing Windows 8 for an ultimate integration with natural user interface (NUI) technology, which allows you to have everything at your fingertips without going through a whole lot of effort.

Contracts Windows Store apps use contracts and extensions to declare the interactions that they support with other apps and with Windows. Search contracts opens up your application to intregrate with Windows search. Share contract allows your app to share content with other apps. Many others exist and can be found at

#10: Monetizing

Windows Store Sell your application in the Windows Store. Designed for Discovery. Reach – Global (231 markets) Enterprise Flexible business model (free, paid or trial) Microsoft AD SDK out now.

Windows Store Registration Fee is $49 USD ($99 for Companies) Share up to 80% of the revenue generated from app sales.

Recap 1.Starting with the Fundamentals – A,B,C’s 2.Application Lifecycle 3.XML/Code Namespaces 4.Making WebRequest - Async 5.Storage – Files 6.Navigation – Easier than URI 7.Controls – New ones Added 8.Animations – Baked into WinRT 9.Freebies – Charms (Searching and Sharing) 10.Monetizing – With the Microsoft Store

Resources Main starting point: Silverlight 5 vs.WinRT comparison by namespace - See my article in Visual Studio Magazine where I ported a SL2 app to a Windows Store App. Telerik RadControls for Windows Store – HTML

Thank you! Michael Crump |