SlideShare a Scribd company logo
Windows 8 for Silverlight/WPF Coderz




                            Jeremy Likness (@JeremyLikness)
                            Principal Consultant
                            jlikness@wintellect.com
                                                                Copyright © 2012




consulting   training   design   debugging                    wintellect.com
what we do
    consulting     training    design     debugging

 who we are
   Founded by top experts on Microsoft – Jeffrey Richter, Jeff Prosise, and John Robbins –
   we pull out all the stops to help our customers achieve their goals through advanced
   software-based consulting and training solutions.

 how we do it                                           Training
                                                        •   On-site instructor-led training
   Consulting & Debugging                               •   Virtual instructor-led training
   •   Architecture, analysis, and design services      •   Devscovery conferences
   •   Full lifecycle custom software development
   •   Content creation                                 Design
   •   Project management                               •   User Experience Design
   •   Debugging & performance tuning                   •   Visual & Content Design
                                                        •   Video & Animation Production


consulting    training    design     debugging                                   wintellect.com
Building Windows 8 Apps
                                    • Everything you need to build and
                                      deploy Windows 8 Apps
                                    • Full source code online
                                    • Leverage your C# and XAML skills
                                    • Learn about new concepts, like:
                                        – Roaming storage
                                        – Live Tiles and Notifications
                                        – The Windows Store




                                        http://bit.ly/win8design



consulting   training   design   debugging                               wintellect.com
Agenda
 •   Introduction
 •   XAML and Blend
 •   Animations
 •   Styles – Parts and States
 •   New Controls – Grouping and Sorting
 •   Visual State Manager (Orientations, Snapped, Resolutions)
 •   WinRT
 •   Charms and Contracts
 •   Application Bar
 •   Portable Class Library
 •   Strategies for Managing the Gap
 •   Recap


consulting   training   design   debugging                       wintellect.com
Introduction: Windows 8 Apps
 •   Brand new look and feel
 •   Run on a variety of devices
 •   Sold through the Windows Store
 •   Language choice (we’ll focus on C#/XAML, but C++/XAML and
     HTML5/JavaScript are available)
 •   Single, chromeless window that fills the entire screen
 •   Multiple layouts – orientation, snapped, form-factors, etc.
 •   Touch-first but pen, mouse, and keyboard friendly
 •   Apps “talk to each other” through contracts
 •   New controls and UI surfaces
 •   Tiles instead of icons


consulting   training   design   debugging              wintellect.com
demo
   Windows 8 Apps




consulting   training   design   debugging   wintellect.com
XAML and Blend

 • XAML very similar to Silverlight/WPF
   – Namespaces change
   – No markup extensions
 • Still design-time friendly
 • MVVM built-in to the templates
 • You still have a friend in Blend!

consulting   training   design   debugging   wintellect.com
demo
   XAML and Blend




consulting   training   design   debugging   wintellect.com
Animations

 • Same old story(board)
 • Plus a whole lot more
 • Animations Library makes life easy




consulting   training   design   debugging   wintellect.com
demo
   Animations




consulting   training   design   debugging   wintellect.com
Styles

 • Same concept, can use styles “as is” in
   many cases
 • Resource keys allow for theme-aware
   styles (ex: high contrast)
 • Same parts and states for controls
 • StyleSelector to return styles



consulting   training   design   debugging   wintellect.com
Theme Dictionaries
 <ResourceDictionary>
   <ResourceDictionary.ThemeDictionaries>
     <ResourceDictionary x:Key="Default">
        <SolidColorBrush x:Key="AppBarBackgroundThemeBrush“
         Color="#E5000000" />
        <SolidColorBrush x:Key="AppBarBorderThemeBrush“
         Color="#E5000000" />
     </ResourceDictionary>
     <ResourceDictionary x:Key="HighContrast">
        <SolidColorBrush x:Key="AppBarBackgroundThemeBrush“
         Color="{StaticResource SystemColorButtonFaceColor}" />
        <SolidColorBrush x:Key="AppBarBorderThemeBrush“
         Color="{StaticResource SystemColorHighlightColor}" />
     </ResourceDictionary>
    </ResourceDictionary.ThemeDictionaries>
 </ResourceDictionary>


consulting   training   design   debugging               wintellect.com
StyleSelector
 public class MyStyleSelector: StyleSelector
 {
    protected override Style SelectStyleCore(
       object item,
       DependencyObject container)
       {
          Style style = new Style(typeof(ListViewItem));
          style.Setters.Add(new Setter(
                ListViewItem.ForegroundProperty,
                new SolidColorBrush(Colors.Red)));
          return style;
       }
 }

 <ListView ItemsSource="{Binding Widgets}"
 ItemContainerStyleSelector="{StaticResource MyStyleSelector}" />


consulting   training   design   debugging                 wintellect.com
New Controls

 •   Progress ring
 •   Spell-check support
 •   GridView
 •   ListView
 •   FlipView
 •   SemanticZoom
 •   Touch-first

consulting   training   design   debugging   wintellect.com
demo
   Controls




consulting    training   design   debugging   wintellect.com
Visual State Manager

 • Behaves the same as Silverlight
 • Used in the fundamental templates
 • Helpful for orientation and display
   mode changes
 • Full Blend support



consulting   training   design   debugging   wintellect.com
demo
   VSM




consulting   training   design   debugging   wintellect.com
WinRT
 • The new API for Windows 8 apps
 • Has it’s own type system
 • Provides language projections for support in JavaScript,
   C#, C++, etc.
 • Automatic mapping between types
 • You can create WinRT using managed code for
   consumption by non-managed Windows Store apps
 • See the built-in WinRT types:
   c:windowssystem32WinMetadata
 • Uses ECMA-335 for type definitions – use ILDASM.exe


consulting   training   design   debugging           wintellect.com
demo
   WinRT




consulting   training   design   debugging   wintellect.com
Charms, Contracts, Extensions
 • Use Charms (Windows Key + C) to invoke certain contracts
 • Contracts are agreements between Windows Store apps
 • Extensions are agreements between Windows Store apps
   and the Windows 8 operating system
 • Contracts: Cached file updater, file picker, play to, search,
   settings, share
 • Extensions: account picture provider, AutoPlay,
   background tasks, camera settings, contact picker, file
   activation, game explorer, print task settings, protocol
   activation, SSL/certificates


consulting   training   design   debugging             wintellect.com
demo
   Contracts and Extensions




consulting   training   design   debugging   wintellect.com
Application Bar
 •   Similar to Windows Phone concept
 •   Drop-in control
 •   Automatically handles show/hide
 •   Advanced scenarios like IE10
 •   Commands live at the edge:
      – Right-edge = Charms and “system level” commands
      – Bottom, top edges = Application commands




consulting   training   design   debugging                wintellect.com
Portable Class Library
 • Built into Visual Studio 2012
 • Dozens of profiles based on various combinations
 • Finds the common API surface area between target
   platforms
 • Supported targets:
      –   .NET Framework 4.0 – 4.5
      –   Silverlight 4 – 5
      –   Windows Phone 7 – 7.5
      –   .NET for Windows Store apps
      –   Xbox 360
 • More targets = less surface area

consulting   training   design   debugging        wintellect.com
Strategies for Managing the Gap
 • Only target the specific frameworks you know you will use
   (i.e. don’t target Windows Phone if that’s not on your
   radar)
 • Build as much functionality into the API surface area you
   can
 • Use interfaces (IoC/DI) and delegates for functionality that
   must be platform specific
 • Don’t try to share XAML. The various targets all have
   different design considerations.




consulting   training   design   debugging            wintellect.com
demo
   Wintellog (MVVM + WPF and Windows Store)




consulting   training   design   debugging    wintellect.com
Recap
 •   XAML and Blend
 •   Animations
 •   Styles – Parts and States
 •   New Controls – Grouping and Sorting
 •   Visual State Manager (Orientations, Snapped, Resolutions)
 •   WinRT
 •   Charms and Contracts
 •   Application Bar
 •   Portable Class Library
 •   Strategies for Managing the Gap

consulting   training   design   debugging            wintellect.com
Links

 • Twitter me:
   @JeremyLikness
 • Blog me:
   http://csharperimage.jeremylikness.com/
 • Book me:
   http://bit.ly/win8design
 • Source me:
   http://windows8applications.codeplex.com/

consulting   training   design   debugging   wintellect.com
Questions?




                            Jeremy Likness (@JeremyLikness)
                            Principal Consultant
                            jlikness@wintellect.com



consulting   training   design   debugging                    wintellect.com

More Related Content

What's hot

Building & Designing Windows 10 Universal Windows Apps using XAML and C#
Building & Designing Windows 10 Universal Windows Apps using XAML and C#Building & Designing Windows 10 Universal Windows Apps using XAML and C#
Building & Designing Windows 10 Universal Windows Apps using XAML and C#
Fons Sonnemans
 
Anatomy of an HTML 5 mobile web app
Anatomy of an HTML 5 mobile web app Anatomy of an HTML 5 mobile web app
Anatomy of an HTML 5 mobile web app
Ivano Malavolta
 
Twelve ways to make your apps suck less
Twelve ways to make your apps suck lessTwelve ways to make your apps suck less
Twelve ways to make your apps suck less
Fons Sonnemans
 
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
marjoramg
 
Introduction to Windows 8 Development
Introduction to Windows 8 DevelopmentIntroduction to Windows 8 Development
Introduction to Windows 8 Development
Jeff Bramwell
 
Architecting a Futuristic MODX Manager with HTML5
Architecting a Futuristic MODX Manager with HTML5Architecting a Futuristic MODX Manager with HTML5
Architecting a Futuristic MODX Manager with HTML5
Jp DeVries
 
Just the Facets Ma'am - MWLUG 2013
Just the Facets Ma'am - MWLUG 2013Just the Facets Ma'am - MWLUG 2013
Just the Facets Ma'am - MWLUG 2013
balassaitis
 
Tip from ConnectED 2015: Using Bootstrap and Ratchet frameworks in Domino mob...
Tip from ConnectED 2015: Using Bootstrap and Ratchet frameworks in Domino mob...Tip from ConnectED 2015: Using Bootstrap and Ratchet frameworks in Domino mob...
Tip from ConnectED 2015: Using Bootstrap and Ratchet frameworks in Domino mob...
SocialBiz UserGroup
 
Connect 2014 - BP202: Rapid XPages Development Using the Application Layout C...
Connect 2014 - BP202: Rapid XPages Development Using the Application Layout C...Connect 2014 - BP202: Rapid XPages Development Using the Application Layout C...
Connect 2014 - BP202: Rapid XPages Development Using the Application Layout C...
Howard Greenberg
 
Customizing ERModernLook Applications
Customizing ERModernLook ApplicationsCustomizing ERModernLook Applications
Customizing ERModernLook Applications
WO Community
 

What's hot (10)

Building & Designing Windows 10 Universal Windows Apps using XAML and C#
Building & Designing Windows 10 Universal Windows Apps using XAML and C#Building & Designing Windows 10 Universal Windows Apps using XAML and C#
Building & Designing Windows 10 Universal Windows Apps using XAML and C#
 
Anatomy of an HTML 5 mobile web app
Anatomy of an HTML 5 mobile web app Anatomy of an HTML 5 mobile web app
Anatomy of an HTML 5 mobile web app
 
Twelve ways to make your apps suck less
Twelve ways to make your apps suck lessTwelve ways to make your apps suck less
Twelve ways to make your apps suck less
 
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
 
Introduction to Windows 8 Development
Introduction to Windows 8 DevelopmentIntroduction to Windows 8 Development
Introduction to Windows 8 Development
 
Architecting a Futuristic MODX Manager with HTML5
Architecting a Futuristic MODX Manager with HTML5Architecting a Futuristic MODX Manager with HTML5
Architecting a Futuristic MODX Manager with HTML5
 
Just the Facets Ma'am - MWLUG 2013
Just the Facets Ma'am - MWLUG 2013Just the Facets Ma'am - MWLUG 2013
Just the Facets Ma'am - MWLUG 2013
 
Tip from ConnectED 2015: Using Bootstrap and Ratchet frameworks in Domino mob...
Tip from ConnectED 2015: Using Bootstrap and Ratchet frameworks in Domino mob...Tip from ConnectED 2015: Using Bootstrap and Ratchet frameworks in Domino mob...
Tip from ConnectED 2015: Using Bootstrap and Ratchet frameworks in Domino mob...
 
Connect 2014 - BP202: Rapid XPages Development Using the Application Layout C...
Connect 2014 - BP202: Rapid XPages Development Using the Application Layout C...Connect 2014 - BP202: Rapid XPages Development Using the Application Layout C...
Connect 2014 - BP202: Rapid XPages Development Using the Application Layout C...
 
Customizing ERModernLook Applications
Customizing ERModernLook ApplicationsCustomizing ERModernLook Applications
Customizing ERModernLook Applications
 

Viewers also liked

vu2015konf_Markeviciene vaiku kalba 1
vu2015konf_Markeviciene vaiku kalba 1vu2015konf_Markeviciene vaiku kalba 1
vu2015konf_Markeviciene vaiku kalba 1
SUEFUSK
 
Proyecto renacera
Proyecto renaceraProyecto renacera
Proyecto renacera
Marcos Leonardo Rodriguez
 
Proyecto matematicas para SE
Proyecto matematicas para SEProyecto matematicas para SE
Proyecto matematicas para SE
Ramon RC
 
Querella messi
Querella messiQuerella messi
Querella messi
C C
 
Uwsnm
UwsnmUwsnm
Uwsnm
static2
 
Jp3 13
Jp3 13Jp3 13
Cursa de muntanya 2013
Cursa de muntanya 2013Cursa de muntanya 2013
Cursa de muntanya 2013Calders
 
Quyet dinh
Quyet dinh Quyet dinh
Quyet dinh
tuyencongchuc
 
Trabajo terminado.ppt (2)
Trabajo terminado.ppt (2)Trabajo terminado.ppt (2)
Trabajo terminado.ppt (2)
dhlha8991
 
Wohnungsmarkt
WohnungsmarktWohnungsmarkt
Wohnungsmarktsimoross
 
Gt 23
Gt 23Gt 23
Παρουσίαση Αστέρης Χουλιάρας στην Έκθεση "ΚΟΡΙΝΘΙΑ 2014"
Παρουσίαση Αστέρης Χουλιάρας στην Έκθεση "ΚΟΡΙΝΘΙΑ 2014"Παρουσίαση Αστέρης Χουλιάρας στην Έκθεση "ΚΟΡΙΝΘΙΑ 2014"
Παρουσίαση Αστέρης Χουλιάρας στην Έκθεση "ΚΟΡΙΝΘΙΑ 2014"
Vasileios Balafas
 
Az uvegtol az aranyig2
Az uvegtol az aranyig2Az uvegtol az aranyig2
Az uvegtol az aranyig2
Agnes Tip
 
Outgroup Presentation
Outgroup PresentationOutgroup Presentation
Outgroup Presentation
Tawana Danyelle Smith
 
銘傳交點Vol.4 - KIAIK - 城市美學新態度
銘傳交點Vol.4 - KIAIK - 城市美學新態度銘傳交點Vol.4 - KIAIK - 城市美學新態度
銘傳交點Vol.4 - KIAIK - 城市美學新態度交點
 
Buscando a vontade de deus
Buscando a vontade de deusBuscando a vontade de deus
Buscando a vontade de deus
Carlos Alexandre Ribeiro Dorte
 
Nutri ve
Nutri veNutri ve
Marketing & Branding Essentials I Washington Concepts, Inc.
Marketing & Branding Essentials I Washington Concepts, Inc.Marketing & Branding Essentials I Washington Concepts, Inc.
Marketing & Branding Essentials I Washington Concepts, Inc.
Washington, DC Economic Partnership
 
食品と科学Vol.54 no.10「迷路から抜け出す問題解決の第一歩」
食品と科学Vol.54 no.10「迷路から抜け出す問題解決の第一歩」食品と科学Vol.54 no.10「迷路から抜け出す問題解決の第一歩」
食品と科学Vol.54 no.10「迷路から抜け出す問題解決の第一歩」YUMIKO HIRAI
 

Viewers also liked (20)

vu2015konf_Markeviciene vaiku kalba 1
vu2015konf_Markeviciene vaiku kalba 1vu2015konf_Markeviciene vaiku kalba 1
vu2015konf_Markeviciene vaiku kalba 1
 
Proyecto renacera
Proyecto renaceraProyecto renacera
Proyecto renacera
 
Proyecto matematicas para SE
Proyecto matematicas para SEProyecto matematicas para SE
Proyecto matematicas para SE
 
Querella messi
Querella messiQuerella messi
Querella messi
 
Uwsnm
UwsnmUwsnm
Uwsnm
 
Παρουσίαση στο Money Show 2013
Παρουσίαση στο Money Show 2013Παρουσίαση στο Money Show 2013
Παρουσίαση στο Money Show 2013
 
Jp3 13
Jp3 13Jp3 13
Jp3 13
 
Cursa de muntanya 2013
Cursa de muntanya 2013Cursa de muntanya 2013
Cursa de muntanya 2013
 
Quyet dinh
Quyet dinh Quyet dinh
Quyet dinh
 
Trabajo terminado.ppt (2)
Trabajo terminado.ppt (2)Trabajo terminado.ppt (2)
Trabajo terminado.ppt (2)
 
Wohnungsmarkt
WohnungsmarktWohnungsmarkt
Wohnungsmarkt
 
Gt 23
Gt 23Gt 23
Gt 23
 
Παρουσίαση Αστέρης Χουλιάρας στην Έκθεση "ΚΟΡΙΝΘΙΑ 2014"
Παρουσίαση Αστέρης Χουλιάρας στην Έκθεση "ΚΟΡΙΝΘΙΑ 2014"Παρουσίαση Αστέρης Χουλιάρας στην Έκθεση "ΚΟΡΙΝΘΙΑ 2014"
Παρουσίαση Αστέρης Χουλιάρας στην Έκθεση "ΚΟΡΙΝΘΙΑ 2014"
 
Az uvegtol az aranyig2
Az uvegtol az aranyig2Az uvegtol az aranyig2
Az uvegtol az aranyig2
 
Outgroup Presentation
Outgroup PresentationOutgroup Presentation
Outgroup Presentation
 
銘傳交點Vol.4 - KIAIK - 城市美學新態度
銘傳交點Vol.4 - KIAIK - 城市美學新態度銘傳交點Vol.4 - KIAIK - 城市美學新態度
銘傳交點Vol.4 - KIAIK - 城市美學新態度
 
Buscando a vontade de deus
Buscando a vontade de deusBuscando a vontade de deus
Buscando a vontade de deus
 
Nutri ve
Nutri veNutri ve
Nutri ve
 
Marketing & Branding Essentials I Washington Concepts, Inc.
Marketing & Branding Essentials I Washington Concepts, Inc.Marketing & Branding Essentials I Washington Concepts, Inc.
Marketing & Branding Essentials I Washington Concepts, Inc.
 
食品と科学Vol.54 no.10「迷路から抜け出す問題解決の第一歩」
食品と科学Vol.54 no.10「迷路から抜け出す問題解決の第一歩」食品と科学Vol.54 no.10「迷路から抜け出す問題解決の第一歩」
食品と科学Vol.54 no.10「迷路から抜け出す問題解決の第一歩」
 

Similar to Wintellect - Windows 8 for the Silverlight and WPF Developer

Wintellect - Devscovery - Portable Class Library
Wintellect - Devscovery - Portable Class LibraryWintellect - Devscovery - Portable Class Library
Wintellect - Devscovery - Portable Class Library
Jeremy Likness
 
Windows 8: A Tale of Two Stacks
Windows 8: A Tale of Two StacksWindows 8: A Tale of Two Stacks
Windows 8: A Tale of Two Stacks
Jeremy Likness
 
Nashua Cloud .NET User Group - Basic WP8 App Dev With XAML and C#, April 2013
Nashua Cloud .NET User Group - Basic WP8 App Dev With XAML and C#, April 2013Nashua Cloud .NET User Group - Basic WP8 App Dev With XAML and C#, April 2013
Nashua Cloud .NET User Group - Basic WP8 App Dev With XAML and C#, April 2013
John Garland
 
Intro to modern web technology
Intro to modern web technologyIntro to modern web technology
Intro to modern web technology
Chris Love
 
Browser Developer Tools for APEX Developers
Browser Developer Tools for APEX DevelopersBrowser Developer Tools for APEX Developers
Browser Developer Tools for APEX Developers
Christian Rokitta
 
Silverlight 5
Silverlight 5Silverlight 5
Silverlight 5
Jeremy Likness
 
Win j svsphonegap-damyan-petev-mihail-mateev
Win j svsphonegap-damyan-petev-mihail-mateevWin j svsphonegap-damyan-petev-mihail-mateev
Win j svsphonegap-damyan-petev-mihail-mateev
Mihail Mateev
 
Training presentation.pptx
Training presentation.pptxTraining presentation.pptx
Training presentation.pptx
NishchaiyaBayla1
 
A guide to hiring a great developer to build your first app (redacted version)
A guide to hiring a great developer to build your first app (redacted version)A guide to hiring a great developer to build your first app (redacted version)
A guide to hiring a great developer to build your first app (redacted version)
Oursky
 
What's new in Blend for Visual Studio 2015
What's new in Blend for Visual Studio 2015What's new in Blend for Visual Studio 2015
What's new in Blend for Visual Studio 2015
Fons Sonnemans
 
Introduction to the Managed Extensibility Framework in Silverlight
Introduction to the Managed Extensibility Framework in SilverlightIntroduction to the Managed Extensibility Framework in Silverlight
Introduction to the Managed Extensibility Framework in Silverlight
Jeremy Likness
 
DevTeach Ottawa - Silverlight5 and HTML5
DevTeach Ottawa - Silverlight5 and HTML5DevTeach Ottawa - Silverlight5 and HTML5
DevTeach Ottawa - Silverlight5 and HTML5
Frédéric Harper
 
New voice, new tone, new IA: Writing for the modern developer
New voice, new tone, new IA: Writing for the modern developerNew voice, new tone, new IA: Writing for the modern developer
New voice, new tone, new IA: Writing for the modern developer
Keith Boyd
 
UI_Engineer
UI_EngineerUI_Engineer
UI_Engineer
Sr. UI Engineer
 
Rich Internet Applications and Flex - 1
Rich Internet Applications and Flex - 1Rich Internet Applications and Flex - 1
Rich Internet Applications and Flex - 1
Vijay Kalangi
 
Post Windows Mobile: New Application Development Platforms
Post Windows Mobile: New Application Development PlatformsPost Windows Mobile: New Application Development Platforms
Post Windows Mobile: New Application Development Platforms
Barcoding, Inc.
 
Introduction to HTML, CSS, and JavaScript for Web Development
Introduction to HTML, CSS, and JavaScript for Web DevelopmentIntroduction to HTML, CSS, and JavaScript for Web Development
Introduction to HTML, CSS, and JavaScript for Web Development
Qurinom Solutions
 
Chalam_JAVA_Portal
Chalam_JAVA_PortalChalam_JAVA_Portal
Chalam_JAVA_Portal
chalamaiah thiruveedhi
 
Visual studio 2012 - What's in it for me?
Visual studio 2012 - What's in it for me?Visual studio 2012 - What's in it for me?
Visual studio 2012 - What's in it for me?
Jeff Bramwell
 
Intro to Xamarin
Intro to XamarinIntro to Xamarin
Intro to Xamarin
Abhishek-Joshi
 

Similar to Wintellect - Windows 8 for the Silverlight and WPF Developer (20)

Wintellect - Devscovery - Portable Class Library
Wintellect - Devscovery - Portable Class LibraryWintellect - Devscovery - Portable Class Library
Wintellect - Devscovery - Portable Class Library
 
Windows 8: A Tale of Two Stacks
Windows 8: A Tale of Two StacksWindows 8: A Tale of Two Stacks
Windows 8: A Tale of Two Stacks
 
Nashua Cloud .NET User Group - Basic WP8 App Dev With XAML and C#, April 2013
Nashua Cloud .NET User Group - Basic WP8 App Dev With XAML and C#, April 2013Nashua Cloud .NET User Group - Basic WP8 App Dev With XAML and C#, April 2013
Nashua Cloud .NET User Group - Basic WP8 App Dev With XAML and C#, April 2013
 
Intro to modern web technology
Intro to modern web technologyIntro to modern web technology
Intro to modern web technology
 
Browser Developer Tools for APEX Developers
Browser Developer Tools for APEX DevelopersBrowser Developer Tools for APEX Developers
Browser Developer Tools for APEX Developers
 
Silverlight 5
Silverlight 5Silverlight 5
Silverlight 5
 
Win j svsphonegap-damyan-petev-mihail-mateev
Win j svsphonegap-damyan-petev-mihail-mateevWin j svsphonegap-damyan-petev-mihail-mateev
Win j svsphonegap-damyan-petev-mihail-mateev
 
Training presentation.pptx
Training presentation.pptxTraining presentation.pptx
Training presentation.pptx
 
A guide to hiring a great developer to build your first app (redacted version)
A guide to hiring a great developer to build your first app (redacted version)A guide to hiring a great developer to build your first app (redacted version)
A guide to hiring a great developer to build your first app (redacted version)
 
What's new in Blend for Visual Studio 2015
What's new in Blend for Visual Studio 2015What's new in Blend for Visual Studio 2015
What's new in Blend for Visual Studio 2015
 
Introduction to the Managed Extensibility Framework in Silverlight
Introduction to the Managed Extensibility Framework in SilverlightIntroduction to the Managed Extensibility Framework in Silverlight
Introduction to the Managed Extensibility Framework in Silverlight
 
DevTeach Ottawa - Silverlight5 and HTML5
DevTeach Ottawa - Silverlight5 and HTML5DevTeach Ottawa - Silverlight5 and HTML5
DevTeach Ottawa - Silverlight5 and HTML5
 
New voice, new tone, new IA: Writing for the modern developer
New voice, new tone, new IA: Writing for the modern developerNew voice, new tone, new IA: Writing for the modern developer
New voice, new tone, new IA: Writing for the modern developer
 
UI_Engineer
UI_EngineerUI_Engineer
UI_Engineer
 
Rich Internet Applications and Flex - 1
Rich Internet Applications and Flex - 1Rich Internet Applications and Flex - 1
Rich Internet Applications and Flex - 1
 
Post Windows Mobile: New Application Development Platforms
Post Windows Mobile: New Application Development PlatformsPost Windows Mobile: New Application Development Platforms
Post Windows Mobile: New Application Development Platforms
 
Introduction to HTML, CSS, and JavaScript for Web Development
Introduction to HTML, CSS, and JavaScript for Web DevelopmentIntroduction to HTML, CSS, and JavaScript for Web Development
Introduction to HTML, CSS, and JavaScript for Web Development
 
Chalam_JAVA_Portal
Chalam_JAVA_PortalChalam_JAVA_Portal
Chalam_JAVA_Portal
 
Visual studio 2012 - What's in it for me?
Visual studio 2012 - What's in it for me?Visual studio 2012 - What's in it for me?
Visual studio 2012 - What's in it for me?
 
Intro to Xamarin
Intro to XamarinIntro to Xamarin
Intro to Xamarin
 

Recently uploaded

QA or the Highway - Component Testing: Bridging the gap between frontend appl...
QA or the Highway - Component Testing: Bridging the gap between frontend appl...QA or the Highway - Component Testing: Bridging the gap between frontend appl...
QA or the Highway - Component Testing: Bridging the gap between frontend appl...
zjhamm304
 
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeckPoznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
FilipTomaszewski5
 
Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |
AstuteBusiness
 
"Scaling RAG Applications to serve millions of users", Kevin Goedecke
"Scaling RAG Applications to serve millions of users",  Kevin Goedecke"Scaling RAG Applications to serve millions of users",  Kevin Goedecke
"Scaling RAG Applications to serve millions of users", Kevin Goedecke
Fwdays
 
Must Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during MigrationMust Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during Migration
Mydbops
 
Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
Antonios Katsarakis
 
Leveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and StandardsLeveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and Standards
Neo4j
 
From Natural Language to Structured Solr Queries using LLMs
From Natural Language to Structured Solr Queries using LLMsFrom Natural Language to Structured Solr Queries using LLMs
From Natural Language to Structured Solr Queries using LLMs
Sease
 
Christine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptxChristine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptx
christinelarrosa
 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
operationspcvita
 
Principle of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptxPrinciple of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptx
BibashShahi
 
Discover the Unseen: Tailored Recommendation of Unwatched Content
Discover the Unseen: Tailored Recommendation of Unwatched ContentDiscover the Unseen: Tailored Recommendation of Unwatched Content
Discover the Unseen: Tailored Recommendation of Unwatched Content
ScyllaDB
 
Introducing BoxLang : A new JVM language for productivity and modularity!
Introducing BoxLang : A new JVM language for productivity and modularity!Introducing BoxLang : A new JVM language for productivity and modularity!
Introducing BoxLang : A new JVM language for productivity and modularity!
Ortus Solutions, Corp
 
GlobalLogic Java Community Webinar #18 “How to Improve Web Application Perfor...
GlobalLogic Java Community Webinar #18 “How to Improve Web Application Perfor...GlobalLogic Java Community Webinar #18 “How to Improve Web Application Perfor...
GlobalLogic Java Community Webinar #18 “How to Improve Web Application Perfor...
GlobalLogic Ukraine
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
DianaGray10
 
AI in the Workplace Reskilling, Upskilling, and Future Work.pptx
AI in the Workplace Reskilling, Upskilling, and Future Work.pptxAI in the Workplace Reskilling, Upskilling, and Future Work.pptx
AI in the Workplace Reskilling, Upskilling, and Future Work.pptx
Sunil Jagani
 
"What does it really mean for your system to be available, or how to define w...
"What does it really mean for your system to be available, or how to define w..."What does it really mean for your system to be available, or how to define w...
"What does it really mean for your system to be available, or how to define w...
Fwdays
 
What is an RPA CoE? Session 2 – CoE Roles
What is an RPA CoE?  Session 2 – CoE RolesWhat is an RPA CoE?  Session 2 – CoE Roles
What is an RPA CoE? Session 2 – CoE Roles
DianaGray10
 
Mutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented ChatbotsMutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented Chatbots
Pablo Gómez Abajo
 
What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
DianaGray10
 

Recently uploaded (20)

QA or the Highway - Component Testing: Bridging the gap between frontend appl...
QA or the Highway - Component Testing: Bridging the gap between frontend appl...QA or the Highway - Component Testing: Bridging the gap between frontend appl...
QA or the Highway - Component Testing: Bridging the gap between frontend appl...
 
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeckPoznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
 
Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |
 
"Scaling RAG Applications to serve millions of users", Kevin Goedecke
"Scaling RAG Applications to serve millions of users",  Kevin Goedecke"Scaling RAG Applications to serve millions of users",  Kevin Goedecke
"Scaling RAG Applications to serve millions of users", Kevin Goedecke
 
Must Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during MigrationMust Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during Migration
 
Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
 
Leveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and StandardsLeveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and Standards
 
From Natural Language to Structured Solr Queries using LLMs
From Natural Language to Structured Solr Queries using LLMsFrom Natural Language to Structured Solr Queries using LLMs
From Natural Language to Structured Solr Queries using LLMs
 
Christine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptxChristine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptx
 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
 
Principle of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptxPrinciple of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptx
 
Discover the Unseen: Tailored Recommendation of Unwatched Content
Discover the Unseen: Tailored Recommendation of Unwatched ContentDiscover the Unseen: Tailored Recommendation of Unwatched Content
Discover the Unseen: Tailored Recommendation of Unwatched Content
 
Introducing BoxLang : A new JVM language for productivity and modularity!
Introducing BoxLang : A new JVM language for productivity and modularity!Introducing BoxLang : A new JVM language for productivity and modularity!
Introducing BoxLang : A new JVM language for productivity and modularity!
 
GlobalLogic Java Community Webinar #18 “How to Improve Web Application Perfor...
GlobalLogic Java Community Webinar #18 “How to Improve Web Application Perfor...GlobalLogic Java Community Webinar #18 “How to Improve Web Application Perfor...
GlobalLogic Java Community Webinar #18 “How to Improve Web Application Perfor...
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
 
AI in the Workplace Reskilling, Upskilling, and Future Work.pptx
AI in the Workplace Reskilling, Upskilling, and Future Work.pptxAI in the Workplace Reskilling, Upskilling, and Future Work.pptx
AI in the Workplace Reskilling, Upskilling, and Future Work.pptx
 
"What does it really mean for your system to be available, or how to define w...
"What does it really mean for your system to be available, or how to define w..."What does it really mean for your system to be available, or how to define w...
"What does it really mean for your system to be available, or how to define w...
 
What is an RPA CoE? Session 2 – CoE Roles
What is an RPA CoE?  Session 2 – CoE RolesWhat is an RPA CoE?  Session 2 – CoE Roles
What is an RPA CoE? Session 2 – CoE Roles
 
Mutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented ChatbotsMutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented Chatbots
 
What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
 

Wintellect - Windows 8 for the Silverlight and WPF Developer

  • 1. Windows 8 for Silverlight/WPF Coderz Jeremy Likness (@JeremyLikness) Principal Consultant jlikness@wintellect.com Copyright © 2012 consulting training design debugging wintellect.com
  • 2. what we do consulting training design debugging who we are Founded by top experts on Microsoft – Jeffrey Richter, Jeff Prosise, and John Robbins – we pull out all the stops to help our customers achieve their goals through advanced software-based consulting and training solutions. how we do it Training • On-site instructor-led training Consulting & Debugging • Virtual instructor-led training • Architecture, analysis, and design services • Devscovery conferences • Full lifecycle custom software development • Content creation Design • Project management • User Experience Design • Debugging & performance tuning • Visual & Content Design • Video & Animation Production consulting training design debugging wintellect.com
  • 3. Building Windows 8 Apps • Everything you need to build and deploy Windows 8 Apps • Full source code online • Leverage your C# and XAML skills • Learn about new concepts, like: – Roaming storage – Live Tiles and Notifications – The Windows Store http://bit.ly/win8design consulting training design debugging wintellect.com
  • 4. Agenda • Introduction • XAML and Blend • Animations • Styles – Parts and States • New Controls – Grouping and Sorting • Visual State Manager (Orientations, Snapped, Resolutions) • WinRT • Charms and Contracts • Application Bar • Portable Class Library • Strategies for Managing the Gap • Recap consulting training design debugging wintellect.com
  • 5. Introduction: Windows 8 Apps • Brand new look and feel • Run on a variety of devices • Sold through the Windows Store • Language choice (we’ll focus on C#/XAML, but C++/XAML and HTML5/JavaScript are available) • Single, chromeless window that fills the entire screen • Multiple layouts – orientation, snapped, form-factors, etc. • Touch-first but pen, mouse, and keyboard friendly • Apps “talk to each other” through contracts • New controls and UI surfaces • Tiles instead of icons consulting training design debugging wintellect.com
  • 6. demo Windows 8 Apps consulting training design debugging wintellect.com
  • 7. XAML and Blend • XAML very similar to Silverlight/WPF – Namespaces change – No markup extensions • Still design-time friendly • MVVM built-in to the templates • You still have a friend in Blend! consulting training design debugging wintellect.com
  • 8. demo XAML and Blend consulting training design debugging wintellect.com
  • 9. Animations • Same old story(board) • Plus a whole lot more • Animations Library makes life easy consulting training design debugging wintellect.com
  • 10. demo Animations consulting training design debugging wintellect.com
  • 11. Styles • Same concept, can use styles “as is” in many cases • Resource keys allow for theme-aware styles (ex: high contrast) • Same parts and states for controls • StyleSelector to return styles consulting training design debugging wintellect.com
  • 12. Theme Dictionaries <ResourceDictionary> <ResourceDictionary.ThemeDictionaries> <ResourceDictionary x:Key="Default"> <SolidColorBrush x:Key="AppBarBackgroundThemeBrush“ Color="#E5000000" /> <SolidColorBrush x:Key="AppBarBorderThemeBrush“ Color="#E5000000" /> </ResourceDictionary> <ResourceDictionary x:Key="HighContrast"> <SolidColorBrush x:Key="AppBarBackgroundThemeBrush“ Color="{StaticResource SystemColorButtonFaceColor}" /> <SolidColorBrush x:Key="AppBarBorderThemeBrush“ Color="{StaticResource SystemColorHighlightColor}" /> </ResourceDictionary> </ResourceDictionary.ThemeDictionaries> </ResourceDictionary> consulting training design debugging wintellect.com
  • 13. StyleSelector public class MyStyleSelector: StyleSelector { protected override Style SelectStyleCore( object item, DependencyObject container) { Style style = new Style(typeof(ListViewItem)); style.Setters.Add(new Setter( ListViewItem.ForegroundProperty, new SolidColorBrush(Colors.Red))); return style; } } <ListView ItemsSource="{Binding Widgets}" ItemContainerStyleSelector="{StaticResource MyStyleSelector}" /> consulting training design debugging wintellect.com
  • 14. New Controls • Progress ring • Spell-check support • GridView • ListView • FlipView • SemanticZoom • Touch-first consulting training design debugging wintellect.com
  • 15. demo Controls consulting training design debugging wintellect.com
  • 16. Visual State Manager • Behaves the same as Silverlight • Used in the fundamental templates • Helpful for orientation and display mode changes • Full Blend support consulting training design debugging wintellect.com
  • 17. demo VSM consulting training design debugging wintellect.com
  • 18. WinRT • The new API for Windows 8 apps • Has it’s own type system • Provides language projections for support in JavaScript, C#, C++, etc. • Automatic mapping between types • You can create WinRT using managed code for consumption by non-managed Windows Store apps • See the built-in WinRT types: c:windowssystem32WinMetadata • Uses ECMA-335 for type definitions – use ILDASM.exe consulting training design debugging wintellect.com
  • 19. demo WinRT consulting training design debugging wintellect.com
  • 20. Charms, Contracts, Extensions • Use Charms (Windows Key + C) to invoke certain contracts • Contracts are agreements between Windows Store apps • Extensions are agreements between Windows Store apps and the Windows 8 operating system • Contracts: Cached file updater, file picker, play to, search, settings, share • Extensions: account picture provider, AutoPlay, background tasks, camera settings, contact picker, file activation, game explorer, print task settings, protocol activation, SSL/certificates consulting training design debugging wintellect.com
  • 21. demo Contracts and Extensions consulting training design debugging wintellect.com
  • 22. Application Bar • Similar to Windows Phone concept • Drop-in control • Automatically handles show/hide • Advanced scenarios like IE10 • Commands live at the edge: – Right-edge = Charms and “system level” commands – Bottom, top edges = Application commands consulting training design debugging wintellect.com
  • 23. Portable Class Library • Built into Visual Studio 2012 • Dozens of profiles based on various combinations • Finds the common API surface area between target platforms • Supported targets: – .NET Framework 4.0 – 4.5 – Silverlight 4 – 5 – Windows Phone 7 – 7.5 – .NET for Windows Store apps – Xbox 360 • More targets = less surface area consulting training design debugging wintellect.com
  • 24. Strategies for Managing the Gap • Only target the specific frameworks you know you will use (i.e. don’t target Windows Phone if that’s not on your radar) • Build as much functionality into the API surface area you can • Use interfaces (IoC/DI) and delegates for functionality that must be platform specific • Don’t try to share XAML. The various targets all have different design considerations. consulting training design debugging wintellect.com
  • 25. demo Wintellog (MVVM + WPF and Windows Store) consulting training design debugging wintellect.com
  • 26. Recap • XAML and Blend • Animations • Styles – Parts and States • New Controls – Grouping and Sorting • Visual State Manager (Orientations, Snapped, Resolutions) • WinRT • Charms and Contracts • Application Bar • Portable Class Library • Strategies for Managing the Gap consulting training design debugging wintellect.com
  • 27. Links • Twitter me: @JeremyLikness • Blog me: http://csharperimage.jeremylikness.com/ • Book me: http://bit.ly/win8design • Source me: http://windows8applications.codeplex.com/ consulting training design debugging wintellect.com
  • 28. Questions? Jeremy Likness (@JeremyLikness) Principal Consultant jlikness@wintellect.com consulting training design debugging wintellect.com

Editor's Notes

  1. Show IE10 and app bar, weather, then go into photos, take a picture, send to puzzle touch to show contracts
  2. Create grid app, show XAML and point out differences, then open in Blend and show the new Device tab on the GroupedItemsView
  3. Personality animations
  4. Show tip for the SDK/Design C:\\Program Files (x86)\\Windows Kits\\8.0\\Include\\WinRT\\Xaml\\Design
  5. Show controls, then layout, and panels, then touch – use simulator and don’t forget semantic zoom
  6. Show Windows8Application2 in the simulator – semantic zoom
  7. Navigate and show the ildasm of the metadata. Then show the Thumbnail library.
  8. Reinforce thumbnail extensions, show search and settings
  9. Reinforce thumbnail extensions, show search and settings