What's New in Silverlight 5 by LearnNowOnline

VIEWS: 20 PAGES: 33

More Info
									What’s New in Silverlight 5




       Learn More @ http://www.learnnowonline.com
          Copyright © by Application Developers Training Company
What’s New In Silverlight 5
 •   Data Binding Improvements
 •   Text
 •   Controls
 •   Media
 •   Trusted Applications




             Learn More @ http://www.learnnowonline.com
                Copyright © by Application Developers Training Company
Data binding improvements
 •   Data binding debugging
 •   Ancestor RelativeSource binding
 •   Implicit data templates
 •   UpdateSourceTrigger=PropertyChanged
 •   Binding in style setters
 •   Custom markup extensions


             Learn More @ http://www.learnnowonline.com
                Copyright © by Application Developers Training Company
Data binding improvements
 • These updates are very welcome changes for
   developers using MVVM in their applications




            Learn More @ http://www.learnnowonline.com
               Copyright © by Application Developers Training Company
Model-View-ViewModel (MVVM)
 •   It’s a separation pattern, like MVC or MVP
 •   Improves structure / separation of concerns
 •   Enables better designer / developer workflow
 •   Enhances testability
 •   Made possible by the robust data binding
     capabilities of Silverlight and WPF



              Learn More @ http://www.learnnowonline.com
                 Copyright © by Application Developers Training Company
MVVM Structure
    View
    •XAML
    •Data bindings

    View Model
    •Model of the View (or View of the Model)
    •Properties and commands

    Model
    •Domain model / business logic
    •Services, persistence, everything else



            Learn More @ http://www.learnnowonline.com
                Copyright © by Application Developers Training Company
Connecting the pieces of MVVM
 • View -> ViewModel
   • ViewModel exposes properties and commands that
     the view binds to
   • ViewModel implements INotifyPropertyChanged to
     relay change notifications to View
   • The View’s DataContext is bound to the
     ViewModel, making all of it’s properties and
     commands available to the entire View


            Learn More @ http://www.learnnowonline.com
               Copyright © by Application Developers Training Company
Connecting the pieces of MVVM
 • ViewModel -> View
   • ViewModel contains domain objects from the
     Model and exposes relevant portions of it to the
     View
   • ViewModel calls services to fetch or save data to
     the Model




             Learn More @ http://www.learnnowonline.com
                Copyright © by Application Developers Training Company
Key elements of MVVM
 • INotifyPropertyChanged
   • PropertyChanged event
 • ICommand
   • Execute
   • CanExecute
   • CanExecuteChanged event




               Learn More @ http://www.learnnowonline.com
                  Copyright © by Application Developers Training Company
MVVM Basics

DEMO


              Learn More @ http://www.learnnowonline.com
                 Copyright © by Application Developers Training Company
Data binding debugging
 • Allows breakpoints on data binding statements
 • Exposes information on the data binding
   source, errors, etc…
 • Makes troubleshooting data binding issues
   really easy!




            Learn More @ http://www.learnnowonline.com
               Copyright © by Application Developers Training Company
Data binding debugging

DEMO


              Learn More @ http://www.learnnowonline.com
                  Copyright © by Application Developers Training Company
Ancestor RelativeSource binding
 • New binding mode brought over from WPF
 • Allows a child element to bind to properties on
   its parent
 • Very useful within item templates in an items
   control




            Learn More @ http://www.learnnowonline.com
               Copyright © by Application Developers Training Company
Ancestor RelativeSource binding

DEMO


               Learn More @ http://www.learnnowonline.com
                  Copyright © by Application Developers Training Company
Implicit data templates
 • Another binding feature from WPF
 • Defines a template to be used whenever
   Silverlight tries to display a particular type
 • In Silverlight 4, we had to explicitly specify a
   template for our custom types
 • Very useful when binding to a list of different
   subclasses – not limited to a single item
   template now!

             Learn More @ http://www.learnnowonline.com
                Copyright © by Application Developers Training Company
Implicit data templates

DEMO


                Learn More @ http://www.learnnowonline.com
                   Copyright © by Application Developers Training Company
New UpdateSourceTrigger
 • Adds “PropertyChanged” option to available
   UpdateSourceTriggers – also from WPF
 • When used, the source of the binding (on our
   ViewModel) is updated whenever the property
   on the View is changed




           Learn More @ http://www.learnnowonline.com
              Copyright © by Application Developers Training Company
PropertyChanged UpdateSourceTrigger

DEMO


              Learn More @ http://www.learnnowonline.com
                 Copyright © by Application Developers Training Company
Custom markup extensions
 • Markup extensions are the parts of XAML that
   are surrounded by {curly braces}
   • Binding, StaticResource, DynamicResource, etc…
 • They provide a value – one that is often not
   known until runtime
 • Silverlight 5 now allows us to create our own
   markup extensions


            Learn More @ http://www.learnnowonline.com
               Copyright © by Application Developers Training Company
Custom markup extensions

DEMO


              Learn More @ http://www.learnnowonline.com
                 Copyright © by Application Developers Training Company
Binding in Style Setters
 • Styles are useful and widely used to define a
   consistent look and feel to our applications
 • Until now, binding in the setters within styles
   were now allowed
 • Silverlight 5 allows us to create binding
   statements within stlyes



             Learn More @ http://www.learnnowonline.com
                Copyright © by Application Developers Training Company
Binding in style setters

DEMO


                 Learn More @ http://www.learnnowonline.com
                    Copyright © by Application Developers Training Company
What’s New In Silverlight 5
 •   Data Binding Improvements
 •   Text
 •   Controls
 •   Media
 •   Trusted Applications




             Learn More @ http://www.learnnowonline.com
                Copyright © by Application Developers Training Company
Text improvements
 •   Character spacing and line height
 •   TextOptions – pixel snapping
 •   OpenType support
 •   Linked text blocks for multi-column and
     flowing text




              Learn More @ http://www.learnnowonline.com
                 Copyright © by Application Developers Training Company
Character spacing and line height
 • “CharacterSpacing” and “LineHeight”
   properties
   • TextBox, TextBlock, RichTextBox, RichTextBlock
 • CharacterSpacing calculated based formula:
   •   Spacing (in pixels) = (font size * Value) / 1000

 • LineHeight is the spacing between lines, in
   pixels


               Learn More @ http://www.learnnowonline.com
                  Copyright © by Application Developers Training Company
Linked text
 • RichTextBlocks can now specify a
   RichTextBlockOverflow element that text will
   flow to when full
 • RichTextBlockOverflow elements can specify
   additional overflow containers
 • Limited only to read-only RichTextBlocks



            Learn More @ http://www.learnnowonline.com
               Copyright © by Application Developers Training Company
Linked text, character spacing and line height

DEMO


                Learn More @ http://www.learnnowonline.com
                   Copyright © by Application Developers Training Company
TextOptions
 • TextFormattingMode
   • Ideal, Display (pixel snapping)
 • TextHintingMode
   • Fixed, Animated
 • TextRenderingMode
   • Auto, Aliased, Greyscale, ClearType




             Learn More @ http://www.learnnowonline.com
                Copyright © by Application Developers Training Company
OpenType Support
 •   Ligatures – glyphs with more than one letter
 •   Contextual Alternates
 •   Stylistic Sets
 •   Variants – superscript and subscript
 •   Fractions
 •   Much more in the Typography class!


              Learn More @ http://www.learnnowonline.com
                 Copyright © by Application Developers Training Company
TextOptions and OpenType

DEMO


              Learn More @ http://www.learnnowonline.com
                 Copyright © by Application Developers Training Company
What’s New In Silverlight 5
 •   Data Binding Improvements
 •   Text
 •   Controls
 •   Media
 •   Trusted Applications




             Learn More @ http://www.learnnowonline.com
                Copyright © by Application Developers Training Company
What’s New in Silverlight 5




        Learn More @ http://www.learnnowonline.com
           Copyright © by Application Developers Training Company
Learn More!
• This is an excerpt from a larger course. Visit
  www.learnnowonline.com for the full details!




           Learn More @ http://www.learnnowonline.com
              Copyright © by Application Developers Training Company

								
To top