SlideShare une entreprise Scribd logo
1  sur  25
Silverlight
                                   Base Conceptions




                                           Taras Romanyk
                                           Software Engineer
                                           tromanyk@softserveinc.com
                                           http://rredcat.blogspot.com
Copyright © 2006 SoftServe, Inc.
What is Silverlight?




Microsoft Silverlight is a cross-browser, cross-platform implementation of the .NET

Framework for building and delivering the next generation of media experiences and

rich interactive applications (RIA) for the Web. Silverlight unifies the capabilities of the

server, the Web, and the desktop, of managed code and dynamic languages, of

declarative and traditional programming, and the power of Windows Presentation

Foundation (WPF). (© msdn).
Compatible Operating Systems and Browsers
Operating         Windows      Windows      Internet      Firefox 2, 3   Safari 3       Safari 4
System            Internet     Internet     Explorer 6
                  Explorer 8   Explorer 7

Windows Vista
                       +            +             -             +              -              -
Windows 7
                       +             -            -             +              -              -
Windows Server
2008                   +            +             -             +              -              -
Windows Server
2008 R2                +             -            -             -              -              -
Windows XP
SP2, SP3               +            +            +              +              -              -
Windows 2000
                                            Silverlight
SP4 +
KB 891861
                        -            -      2, 3 Only           -              -              -
Windows Server
2003 (excluding
IA-64)
                       +            +            +              +              -              -
Mac OS 10.4.8+                                             Silverlight    Silverlight
(PowerPC)               -            -            -        1.0 Only       1.0 Only            -
Mac OS 10.4.8+
(Intel-based)           -            -            -             +              +              +
Developer tools

 Visual Studio 2008 or Visual Web Developer
  2008 Express Edition with Silverlight Tools for
  Visual Studio 2008
 Expression Blend
 Silverlight 3 SDK
 Silverlight Toolkit
 .NET RIA Services
 Deep Zoom Composer
 Silverlight Dynamic Languages SDK
Silverlight Architecture
Integrating Silverlight
                     The Silverlight Programming Model
Silverlight uses the ActiveX plug-in model for Microsoft Internet Explorer, and
uses the Netscape API plug-in model for other browsers.
                                   Interaction
 You can call Silverlight’s method from JavaScript.
 You can call JavaScript’s method from Silverlight.
 You can load loose XAML.
 Silverlight app can be hosted Out-of-Browser or on Alternative Hosting.
 Previous versions of the Silverlight SDK included the ASP.NET Controls for
  Silverlight. These enabled a way for Silverlight applications to be embedded in
  an ASP.NET Web page that is familiar to ASP.NET developers. The Silverlight 3
  SDK does not contain the ASP.NET Server Controls for Silverlight and
  developers are encouraged to use the HTML or JavaScript embedding
  techniques described previously to add Silverlight content.
 IsolatedStorage – 1MB.
XAML Usage Syntax

 XAML Usage
 Content Models
 Collections
 Markup Extensions
 Enumerations
 Type Converters
 Prefixes and Mappings for Silverlight Libraries
 Resources Dictionaries
Base conceptions for Business Application

Binding
DataContext
ItemsSource
Dependency property
Attach dependency property
ICommand interface
Binding
Binding

 Path                            ConverterParameter

 Sources                         Mode

     Source                            OneTime

     ElementName                       OneWay

     RelativeSource                    TwoWay

          Self                   UpdateSourceTrigger

          TemplatedParent              Default

 Converter                             Explicit
Styling & Templating



Style
ControlTemplate
DataTemplate
Trigger



       EventTrigger


       VisualStateManager


Caution! VisualStateManager isn’t trigger! It presents approach for
simulation only.
Transforms

 RotateTransform

 ScaleTransform

 SkewTransform

 TranslateTransform

 MatrixTransform



 TransformGroup
Animation Overview

 You can creating an Animation in Procedural Code or XAML
 Double,   Color,    or    Point   can    be      animated.    Use
  ObjectAnimationUsingKeyFrames for properties of other types
 You can Start, Stop, Pause, and Resume an Animation
 Controlling the Begin Time of Animations
 Animation Types
 Applying an Animation to a Property
 Animating Transforms
 What Happens After an Animation Ends
 Easing Functions
 Custom Animations
Full Screen Support & Browser Zoom Setting
         Full Screen Support                                                Zoom
   A Silverlight plug-in doesn’t display any HTML        The browser zoom setting can affect any code
    content in full-screen mode.                           that depends on precise sizing or placement of
                                                           the plug-in within the host Web page. Different
   A Silverlight plug-in can enable full-screen
                                                           browsers respond to zoom settings in different
    mode only in response to a user-initiated
                                                           ways. The operating system dots per inch (DPI)
    action.
                                                           display setting can also affect the zoom setting.
   A Silverlight plug-in briefly displays the             If your application uses custom sizing logic, be
    message "Press ESC to exit full-screen mode".          sure to test it on different browsers and with
                                                           high DPI settings.
   If a Web page hosts multiple Silverlight plug-
    ins, only one plug-in can be in full-screen mode      You can disable this feature or replace it by
    at one time.                                           handling the Zoomed event.
   UP ARROW, DOWN ARROW, LEFT ARROW,                     The Zoomed event does not have specialized
    RIGHT ARROW, SPACEBAR, TAB, PAGE UP,                   event data (for either JavaScript or managed
    PAGE DOWN, HOME, END, ENTER                            API handling). For managed handling, you can
                                                           check    the   value   of  ZoomFactor,   but
   A Silverlight    plug-in does not        support
                                                           ZoomFactor is not available for JavaScript
    OpenFileDialog   and SaveFileDialog     in full-
                                                           handling.
    screen mode.
                                                          Zoom is not relevant for full-screen or out-of-
   Multitouch input is not supported in full-screen
                                                           browser.
    mode.
Deep Zoom

Deep Zoom provides the ability to interactively view high-resolution images. You can
zoom in and out of images rapidly without affecting the performance of your
application. Deep Zoom enables smooth loading and panning by serving up multi-
resolution images and using spring animations.
Exploration of Very Large or High Resolution Images: A classic example of this
would be zooming in on parts of a large map to see different levels of detail and then,
using the mouse, moving your view around the map surface.
3-D Photography: Take pictures of a room, one after the other, creating a collection
of photos that make up a 360 degree picture of the room. Now the user can pan
around the room with each photo blending into the other.
Advertisements: You could create a relatively low-resolution image to represent the
overall theme of the ad, and then have progressively higher resolution images
containing more impressions and data about the product. When the page the ad is
embedded in first loads, the ad smoothly sharpens and draws the attention of the
reader by loading subsequently higher resolution images. Since the ad progressively
loads, it does not significantly impact the user's overall experience of the site. In
addition, if the user's mouse enters the ad, different parts of the ad can zoom in.
Deep Zoom: How it works
3D

 PlaneProjection

 Matrix3DProjection

   Matrix3D



 Projection
Networking and Communication

    WCF

    Web Service

    Socket

    WebClient

    HttpWebRequest

    HttpWebResponse

    Cookies
MVVM: Model-View-ViewModel Pattern
User & Custom controls


   User Control                    Custom Control

 You need a complex            You need to expand
  user interface that            functionality of exist
  contains common or             control.
  custom controls.
                                You need a control
                                 that doesn’t like to
                                 any common controls.


Caution! If you need to change a look of common control using
DataTemplate, ControlTemplate & Style approach is enough.
Custom Control




 OnApplyTemplate()


 Size MeasureOverride( Size availableSize )


 Size ArrangeOverride( Size finalSize )
Silverlight Toolkit

     Components in the           Components in the Stable
  Mature/SDK Quality Band             Quality Band
 AutoCompleteBox               DockPanel
 Calendar                      Expander
 ChildWindow                   HeaderedContentControl
 DataGrid                      Label
 DataPager                     NumericUpDown
 DatePicker                    Viewbox
 GridSplitter                  WrapPanel
 HeaderedItemsControl
 TabControl
 TreeView
Silverlight 4 Beta. What is new?
 Accessing Web Camera and Microphone
 Printing support
 A full set of forms controls with over 60 customizable, styleable components. New
  controls include RichTextbox with hyperlinks, images and editing and Masked
  textbox for complex field validation.
 WCF RIA Services
 Localization enhancements with Bi-Directional text, Right-to-Left support and
  complex scripts such as Arabic, Hebrew and Thai and 30 new languages.
 Enhanced databinding support.
 Support for Google’s Chrome browser.
 Performance optimizations mean Silverlight 4 applications start quicker and run
  200% faster than the equivalent Silverlight 3 application.
 Multi-touch support enables a range of gestures and touch interactions to be
  integrated into user experiences.
 Mouse Wheel and Right-Click support.
Questions?




                                        Taras Romanyk
                                        Software Engineer
                                        tromanyk@softserveinc.com
                                        http://rredcat.blogspot.com
Copyright © 2006 SoftServe, Inc.

Contenu connexe

Tendances

Aranda PATCH MANAGEMENT V 8.0 Productos Soportados
Aranda PATCH MANAGEMENT V 8.0 Productos SoportadosAranda PATCH MANAGEMENT V 8.0 Productos Soportados
Aranda PATCH MANAGEMENT V 8.0 Productos SoportadosAranda Software
 
AD106 - IBM Lotus Domino XPages anywhere - Write them once, See them Everywhere
AD106 - IBM Lotus Domino XPages anywhere - Write them once, See them EverywhereAD106 - IBM Lotus Domino XPages anywhere - Write them once, See them Everywhere
AD106 - IBM Lotus Domino XPages anywhere - Write them once, See them EverywhereStephan H. Wissel
 
DanNotes XPages Mobile Controls
DanNotes XPages Mobile ControlsDanNotes XPages Mobile Controls
DanNotes XPages Mobile ControlsPaul Withers
 
Modular applications with montage components
Modular applications with montage componentsModular applications with montage components
Modular applications with montage componentsBenoit Marchant
 
We4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT lcty 2013 - infra-man - whats new in ibm domino application developmentWe4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT lcty 2013 - infra-man - whats new in ibm domino application developmentWe4IT Group
 
BlackBerry Basic
BlackBerry BasicBlackBerry Basic
BlackBerry BasicDuy Do Phan
 
Part 3 web development
Part 3 web developmentPart 3 web development
Part 3 web developmenttechbed
 

Tendances (10)

Aranda PATCH MANAGEMENT V 8.0 Productos Soportados
Aranda PATCH MANAGEMENT V 8.0 Productos SoportadosAranda PATCH MANAGEMENT V 8.0 Productos Soportados
Aranda PATCH MANAGEMENT V 8.0 Productos Soportados
 
AD106 - IBM Lotus Domino XPages anywhere - Write them once, See them Everywhere
AD106 - IBM Lotus Domino XPages anywhere - Write them once, See them EverywhereAD106 - IBM Lotus Domino XPages anywhere - Write them once, See them Everywhere
AD106 - IBM Lotus Domino XPages anywhere - Write them once, See them Everywhere
 
DanNotes XPages Mobile Controls
DanNotes XPages Mobile ControlsDanNotes XPages Mobile Controls
DanNotes XPages Mobile Controls
 
Modular applications with montage components
Modular applications with montage componentsModular applications with montage components
Modular applications with montage components
 
UBNCorpProfile_v3
UBNCorpProfile_v3UBNCorpProfile_v3
UBNCorpProfile_v3
 
Chpater1
Chpater1Chpater1
Chpater1
 
We4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT lcty 2013 - infra-man - whats new in ibm domino application developmentWe4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT lcty 2013 - infra-man - whats new in ibm domino application development
 
BlackBerry Basic
BlackBerry BasicBlackBerry Basic
BlackBerry Basic
 
Part 3 web development
Part 3 web developmentPart 3 web development
Part 3 web development
 
JavaME UI - JMDF 2007
JavaME UI - JMDF 2007JavaME UI - JMDF 2007
JavaME UI - JMDF 2007
 

Similaire à Silverlight overview

Introduction to silverlight
Introduction to silverlightIntroduction to silverlight
Introduction to silverlightmsarangam
 
Introduction to silverlight control 4
Introduction to silverlight control 4Introduction to silverlight control 4
Introduction to silverlight control 4msarangam
 
Silver Light for every one by Subodh
Silver Light for every one by SubodhSilver Light for every one by Subodh
Silver Light for every one by SubodhSubodh Pushpak
 
Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hour
Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hourConvert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hour
Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hourBrian Culver
 
XAML: One Language to Rule Them All
XAML: One Language to Rule Them AllXAML: One Language to Rule Them All
XAML: One Language to Rule Them AllFrank La Vigne
 
Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Bluegrass Digital
 
Introduction to silver light
Introduction to silver lightIntroduction to silver light
Introduction to silver lightjayc8586
 
Eclipse Developement @ Progress Software
Eclipse Developement @ Progress SoftwareEclipse Developement @ Progress Software
Eclipse Developement @ Progress Softwaresriikanthp
 
Silverlight 2 with Visual Studio 2008 and Expression Blend
Silverlight 2 with Visual Studio 2008 and Expression BlendSilverlight 2 with Visual Studio 2008 and Expression Blend
Silverlight 2 with Visual Studio 2008 and Expression BlendCaleb Jenkins
 
Re-use Your Skills and Code to Expand the Reach of Your Apps with Silverlight
Re-use Your Skills and Code to Expand the Reach of Your Apps with SilverlightRe-use Your Skills and Code to Expand the Reach of Your Apps with Silverlight
Re-use Your Skills and Code to Expand the Reach of Your Apps with SilverlightFrank La Vigne
 
Creativity Day Milano 27 Febbraio Milano
Creativity Day Milano 27 Febbraio MilanoCreativity Day Milano 27 Febbraio Milano
Creativity Day Milano 27 Febbraio Milanoroberto.design
 
It's Time for Silverlight @iRajLal
It's Time for Silverlight @iRajLalIt's Time for Silverlight @iRajLal
It's Time for Silverlight @iRajLalRaj Lal
 
Silverlight development
Silverlight developmentSilverlight development
Silverlight developmentAnurag Gupta
 
Introduction to HTML5 & CSS3
Introduction to HTML5 & CSS3Introduction to HTML5 & CSS3
Introduction to HTML5 & CSS3Pravasini Sahoo
 
Prism Tech Ed India
Prism Tech Ed IndiaPrism Tech Ed India
Prism Tech Ed Indiarsnarayanan
 
Silverlight
SilverlightSilverlight
Silverlightvishakpb
 

Similaire à Silverlight overview (20)

Introduction to silverlight
Introduction to silverlightIntroduction to silverlight
Introduction to silverlight
 
Introduction to silverlight control 4
Introduction to silverlight control 4Introduction to silverlight control 4
Introduction to silverlight control 4
 
Silverlight
SilverlightSilverlight
Silverlight
 
Silver Light for every one by Subodh
Silver Light for every one by SubodhSilver Light for every one by Subodh
Silver Light for every one by Subodh
 
Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hour
Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hourConvert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hour
Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hour
 
Silverlight
SilverlightSilverlight
Silverlight
 
XAML: One Language to Rule Them All
XAML: One Language to Rule Them AllXAML: One Language to Rule Them All
XAML: One Language to Rule Them All
 
Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015
 
Introduction to silver light
Introduction to silver lightIntroduction to silver light
Introduction to silver light
 
Eclipse Developement @ Progress Software
Eclipse Developement @ Progress SoftwareEclipse Developement @ Progress Software
Eclipse Developement @ Progress Software
 
Silverlight
SilverlightSilverlight
Silverlight
 
Silverlight 2 with Visual Studio 2008 and Expression Blend
Silverlight 2 with Visual Studio 2008 and Expression BlendSilverlight 2 with Visual Studio 2008 and Expression Blend
Silverlight 2 with Visual Studio 2008 and Expression Blend
 
Re-use Your Skills and Code to Expand the Reach of Your Apps with Silverlight
Re-use Your Skills and Code to Expand the Reach of Your Apps with SilverlightRe-use Your Skills and Code to Expand the Reach of Your Apps with Silverlight
Re-use Your Skills and Code to Expand the Reach of Your Apps with Silverlight
 
Creativity Day Milano 27 Febbraio Milano
Creativity Day Milano 27 Febbraio MilanoCreativity Day Milano 27 Febbraio Milano
Creativity Day Milano 27 Febbraio Milano
 
It's Time for Silverlight @iRajLal
It's Time for Silverlight @iRajLalIt's Time for Silverlight @iRajLal
It's Time for Silverlight @iRajLal
 
Silverlight development
Silverlight developmentSilverlight development
Silverlight development
 
Silverlight development
Silverlight developmentSilverlight development
Silverlight development
 
Introduction to HTML5 & CSS3
Introduction to HTML5 & CSS3Introduction to HTML5 & CSS3
Introduction to HTML5 & CSS3
 
Prism Tech Ed India
Prism Tech Ed IndiaPrism Tech Ed India
Prism Tech Ed India
 
Silverlight
SilverlightSilverlight
Silverlight
 

Dernier

"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 

Dernier (20)

"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 

Silverlight overview

  • 1. Silverlight Base Conceptions Taras Romanyk Software Engineer tromanyk@softserveinc.com http://rredcat.blogspot.com Copyright © 2006 SoftServe, Inc.
  • 2. What is Silverlight? Microsoft Silverlight is a cross-browser, cross-platform implementation of the .NET Framework for building and delivering the next generation of media experiences and rich interactive applications (RIA) for the Web. Silverlight unifies the capabilities of the server, the Web, and the desktop, of managed code and dynamic languages, of declarative and traditional programming, and the power of Windows Presentation Foundation (WPF). (© msdn).
  • 3. Compatible Operating Systems and Browsers Operating Windows Windows Internet Firefox 2, 3 Safari 3 Safari 4 System Internet Internet Explorer 6 Explorer 8 Explorer 7 Windows Vista + + - + - - Windows 7 + - - + - - Windows Server 2008 + + - + - - Windows Server 2008 R2 + - - - - - Windows XP SP2, SP3 + + + + - - Windows 2000 Silverlight SP4 + KB 891861 - - 2, 3 Only - - - Windows Server 2003 (excluding IA-64) + + + + - - Mac OS 10.4.8+ Silverlight Silverlight (PowerPC) - - - 1.0 Only 1.0 Only - Mac OS 10.4.8+ (Intel-based) - - - + + +
  • 4. Developer tools  Visual Studio 2008 or Visual Web Developer 2008 Express Edition with Silverlight Tools for Visual Studio 2008  Expression Blend  Silverlight 3 SDK  Silverlight Toolkit  .NET RIA Services  Deep Zoom Composer  Silverlight Dynamic Languages SDK
  • 6. Integrating Silverlight The Silverlight Programming Model Silverlight uses the ActiveX plug-in model for Microsoft Internet Explorer, and uses the Netscape API plug-in model for other browsers. Interaction  You can call Silverlight’s method from JavaScript.  You can call JavaScript’s method from Silverlight.  You can load loose XAML.  Silverlight app can be hosted Out-of-Browser or on Alternative Hosting.  Previous versions of the Silverlight SDK included the ASP.NET Controls for Silverlight. These enabled a way for Silverlight applications to be embedded in an ASP.NET Web page that is familiar to ASP.NET developers. The Silverlight 3 SDK does not contain the ASP.NET Server Controls for Silverlight and developers are encouraged to use the HTML or JavaScript embedding techniques described previously to add Silverlight content.  IsolatedStorage – 1MB.
  • 7. XAML Usage Syntax  XAML Usage  Content Models  Collections  Markup Extensions  Enumerations  Type Converters  Prefixes and Mappings for Silverlight Libraries  Resources Dictionaries
  • 8. Base conceptions for Business Application Binding DataContext ItemsSource Dependency property Attach dependency property ICommand interface
  • 10. Binding  Path  ConverterParameter  Sources  Mode  Source  OneTime  ElementName  OneWay  RelativeSource  TwoWay  Self  UpdateSourceTrigger  TemplatedParent  Default  Converter  Explicit
  • 12. Trigger EventTrigger VisualStateManager Caution! VisualStateManager isn’t trigger! It presents approach for simulation only.
  • 13. Transforms  RotateTransform  ScaleTransform  SkewTransform  TranslateTransform  MatrixTransform  TransformGroup
  • 14. Animation Overview  You can creating an Animation in Procedural Code or XAML  Double, Color, or Point can be animated. Use ObjectAnimationUsingKeyFrames for properties of other types  You can Start, Stop, Pause, and Resume an Animation  Controlling the Begin Time of Animations  Animation Types  Applying an Animation to a Property  Animating Transforms  What Happens After an Animation Ends  Easing Functions  Custom Animations
  • 15. Full Screen Support & Browser Zoom Setting Full Screen Support Zoom  A Silverlight plug-in doesn’t display any HTML  The browser zoom setting can affect any code content in full-screen mode. that depends on precise sizing or placement of the plug-in within the host Web page. Different  A Silverlight plug-in can enable full-screen browsers respond to zoom settings in different mode only in response to a user-initiated ways. The operating system dots per inch (DPI) action. display setting can also affect the zoom setting.  A Silverlight plug-in briefly displays the If your application uses custom sizing logic, be message "Press ESC to exit full-screen mode". sure to test it on different browsers and with high DPI settings.  If a Web page hosts multiple Silverlight plug- ins, only one plug-in can be in full-screen mode  You can disable this feature or replace it by at one time. handling the Zoomed event.  UP ARROW, DOWN ARROW, LEFT ARROW,  The Zoomed event does not have specialized RIGHT ARROW, SPACEBAR, TAB, PAGE UP, event data (for either JavaScript or managed PAGE DOWN, HOME, END, ENTER API handling). For managed handling, you can check the value of ZoomFactor, but  A Silverlight plug-in does not support ZoomFactor is not available for JavaScript OpenFileDialog and SaveFileDialog in full- handling. screen mode.  Zoom is not relevant for full-screen or out-of-  Multitouch input is not supported in full-screen browser. mode.
  • 16. Deep Zoom Deep Zoom provides the ability to interactively view high-resolution images. You can zoom in and out of images rapidly without affecting the performance of your application. Deep Zoom enables smooth loading and panning by serving up multi- resolution images and using spring animations. Exploration of Very Large or High Resolution Images: A classic example of this would be zooming in on parts of a large map to see different levels of detail and then, using the mouse, moving your view around the map surface. 3-D Photography: Take pictures of a room, one after the other, creating a collection of photos that make up a 360 degree picture of the room. Now the user can pan around the room with each photo blending into the other. Advertisements: You could create a relatively low-resolution image to represent the overall theme of the ad, and then have progressively higher resolution images containing more impressions and data about the product. When the page the ad is embedded in first loads, the ad smoothly sharpens and draws the attention of the reader by loading subsequently higher resolution images. Since the ad progressively loads, it does not significantly impact the user's overall experience of the site. In addition, if the user's mouse enters the ad, different parts of the ad can zoom in.
  • 17. Deep Zoom: How it works
  • 18. 3D  PlaneProjection  Matrix3DProjection Matrix3D  Projection
  • 19. Networking and Communication  WCF  Web Service  Socket  WebClient  HttpWebRequest  HttpWebResponse  Cookies
  • 21. User & Custom controls User Control Custom Control  You need a complex  You need to expand user interface that functionality of exist contains common or control. custom controls.  You need a control that doesn’t like to any common controls. Caution! If you need to change a look of common control using DataTemplate, ControlTemplate & Style approach is enough.
  • 22. Custom Control  OnApplyTemplate()  Size MeasureOverride( Size availableSize )  Size ArrangeOverride( Size finalSize )
  • 23. Silverlight Toolkit Components in the Components in the Stable Mature/SDK Quality Band Quality Band  AutoCompleteBox  DockPanel  Calendar  Expander  ChildWindow  HeaderedContentControl  DataGrid  Label  DataPager  NumericUpDown  DatePicker  Viewbox  GridSplitter  WrapPanel  HeaderedItemsControl  TabControl  TreeView
  • 24. Silverlight 4 Beta. What is new?  Accessing Web Camera and Microphone  Printing support  A full set of forms controls with over 60 customizable, styleable components. New controls include RichTextbox with hyperlinks, images and editing and Masked textbox for complex field validation.  WCF RIA Services  Localization enhancements with Bi-Directional text, Right-to-Left support and complex scripts such as Arabic, Hebrew and Thai and 30 new languages.  Enhanced databinding support.  Support for Google’s Chrome browser.  Performance optimizations mean Silverlight 4 applications start quicker and run 200% faster than the equivalent Silverlight 3 application.  Multi-touch support enables a range of gestures and touch interactions to be integrated into user experiences.  Mouse Wheel and Right-Click support.
  • 25. Questions? Taras Romanyk Software Engineer tromanyk@softserveinc.com http://rredcat.blogspot.com Copyright © 2006 SoftServe, Inc.

Notes de l'éditeur

  1. Visual Studio 2008 or Visual Web Developer 2008 Express Edition with Silverlight Tools for Visual Studio 2008 - Silverlight project templates for VS. Expression Blend - Expression Blend is a tool for designers (and developers) to create graphics, design animations, and produce experiences. Expression Blend uses XAML and the same project system as Visual Studio. This allows designers and developers to share the same files and collaborate. Silverlight 3 SDK - The Silverlight 3 SDK includes several components to help you create Silverlight-based applications. The Silverlight SDK is included in the Silverlight Tools for Visual Studio 2008 installation or you can install it separately. Silverlight Toolkit - This Toolkit is a Microsoft project containing Silverlight controls, components and utilities that can be downloaded and used in your Silverlight applications. It includes full source code, samples and tests. .NET RIA Services - Microsoft .NET RIA Services simplifies the traditional n-tier application pattern by bringing together the ASP.NET and Silverlight platforms. The RIA Services provides a pattern to write application logic that runs on the mid-tier and controls access to data for queries, changes and custom operations. Deep Zoom Composer - Deep Zoom Composer is a tool to prepare high-resolution images for use with the Deep Zoom feature. The new Deep Zoom technology in Silverlight allows users to perform smooth in-place zooming and panning. The Deep Zoom Composer allows the user to create Deep Zoom composition files that control the zooming experience and then export all the necessary files for deployment with Silverlight. Silverlight Dynamic Languages SDK - The Silverlight Dynamic Languages SDK enables developers to use dynamic languages running on the Dynamic Language Runtime (DLR) to build Silverlight applications. The DLR enables dynamic languages to interoperate with .NET's rich libraries and with each other.
  2. Only quota increases are allowed, you must call this method from a user-initiated event GetUserStoreForSite(); GetUserStoreForApplication();
  3. What actually XAML for, and what can be expressed in XAML Extensible Application Markup Language (XAML, pronounced /ˈzæməl/) is a declarative XML-based language created by Microsoft which is used to initialize structured values and objects.
  4. Move deep zoom before 3d
  5. Move after deep zoom
  6. MVVM benefits/ directions/ differences from mvc/mvp Testability Flexibility Maintainability Put custom controls after here, and put toolkit to say that many are already done
  7. Move much closer to end of presentation