building an end-to-end silverlight 4...
TRANSCRIPT
![Page 1: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/1.jpg)
Building an end-to-end Silverlight 4 application
Write your Christmas cards with Silverlight!
Gill Cleeren Microsoft Regional Director – MVP ASP.NET .NET Architect Ordina Belgium
![Page 2: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/2.jpg)
About myself...
• Gill Cleeren
• Microsoft Regional Director
• MVP ASP.NET
• .NET Architect @Ordina (www.ordina.be)
• Speaker (TechDays, DevDays, NDC Norway, Spring Conference UK, SQL Server Saturday Switzerland, TechEd Berlin, SDC...)
• Visug user group lead (www.visug.be)
• Author (Silverlight 4 Data and services cookbook)
• Blog: www.snowball.be
• Email: [email protected]
• Twitter: @gillcleeren
![Page 3: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/3.jpg)
Announcing...
.NET Show
www.dotnetshow.be
The Belgian podcast for .NET developers
![Page 4: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/4.jpg)
THE SCENARIO FOR TODAY: TURTLE DOOR-TO-DOOR
![Page 5: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/5.jpg)
Turtle Door-to-Door (TDD)
• TDD ships packages around the globe in 48 hours
• TDD wants more consumers to use their service during end-of-year holidays
![Page 6: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/6.jpg)
Turtle Door-to-Door (TDD)
• TDD decided to go for an online campaign
• An e-cards application with webcam support built in Silverlight 4
![Page 7: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/7.jpg)
Agenda
• Building the wireframe
• Setting up the navigation
• Creating the designer interface
• Controls
• Accessing data
• Binding data
• Ref actoring to MVVM
• Taking things out-of-browser
• Exporting to Excel
![Page 8: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/8.jpg)
THE FINISHED APPLICATION Demo
![Page 9: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/9.jpg)
LET’S BUILD THE APP!
![Page 10: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/10.jpg)
SKETCHFLOW Building the wireframe
![Page 11: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/11.jpg)
![Page 12: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/12.jpg)
Nice to meet you, SketchFlow
• Comes with Expression Blend 4
• Why SketchFlow?
– Quick and natural interface design
– Interactive
– Build up flow of your app
– “Sketchy” drawing
– Involves everyone in the design
![Page 13: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/13.jpg)
Nice to meet you, SketchFlow
• Features
– SketchFlow Map
– Allows importing assets
– Sketch styles
– Navigation
– Annotations
– Document generation
– Integration with TFS and SharePoint
![Page 14: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/14.jpg)
CREATING THE WIREFRAME Demo
![Page 15: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/15.jpg)
SETTING UP THE NAVIGATION
![Page 16: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/16.jpg)
From A to B
• Based on Frame and pages – Content becomes URI-addressable
– Integrates with browser navigation
– NavigationService / NavigationContext
– UriMapper
![Page 17: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/17.jpg)
SETTING UP THE NAVIGATION Demo
![Page 18: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/18.jpg)
CREATING THE DESIGNER INTERFACE
![Page 19: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/19.jpg)
Creating the interface designer
![Page 20: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/20.jpg)
Smile, you’re on camera!
• Silverlight has access to webcam and microphones
– Available after prompt, selection can be saved
• API supports device selection
• Access to raw stream of bytes
• Has capture support to make pictures
Webcam
Drag and drop
Printing
Right-click
Designer requirements
![Page 21: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/21.jpg)
Dragging on and on
• SL4 app can be drop target for an external drag operation
– Drag file(s) onto Silverlight app, not supported for folders
– Silverlight gets read-access to these files
– Works on Mac as well
Webcam
Drag and drop
Printing
Right-click
Designer requirements
![Page 22: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/22.jpg)
Print that for me, will you?
• Printing was a big miss in SL2 and SL3 – More or less possible in SL3 via
WriteableBitmap API
• SL4 has PrintDocument class – Part of System.Windows.Printing
• Control over what to print – Entire SL control – Specific control – Dynamic tree
• Possible to use in reporting scenarios – Combined with chart controls
Webcam
Drag and drop
Printing
Right-click
Designer requirements
![Page 23: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/23.jpg)
Right clickety-click
• UIElement now has MouseRightButtonDown and MouseRightButtonUp
• SL menu is still the default
– Must be overridden
• Best use: context menu
Webcam
Drag and drop
Printing
Right-click
Designer requirements
![Page 24: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/24.jpg)
CREATING THE DESIGNER INTERFACE
Demo
![Page 25: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/25.jpg)
RICH CONTROLS
![Page 26: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/26.jpg)
You want to be in control?
ToggleButton
RepeatButton
RadioButton
Button CheckBox
HyperlinkButton
ValidationSummary
TextBlock
Label
PasswordBox
AutoCompleteBox
ComboBox
ListBox
TreeView
TabControl
ChildWindow
DescriptionViewer
Frame
GridSplitter
NotificationWindow
ScrollViewer
Slider
ToolTip
ViewBox
WebBrowser
Image
MultiScaleImage
MediaElement
DataPager DataGrid
Calendar
DatePicker
RichTextArea
![Page 27: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/27.jpg)
Not what you need?
• Download the Silverlight Toolkit from CodePlex
– http://silverlight.codeplex.com
DataForm Charting Theming
DockPanel
WrapPanel
Accordion
LayoutTransformer
TransitioningContentControl
Expander
BusyIndicator
ButtonSpinner UpDown Controls Rating TimePicker Drag/Drop GlobalCalender
![Page 28: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/28.jpg)
Still not what you need?
• Controls can be templated via Parts & States model
– Parts define working parts of control
– States define in what state a control can be
– Supported by Blend
![Page 29: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/29.jpg)
RICH CONTROLS Demo
![Page 30: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/30.jpg)
ACCESSING DATA
![Page 31: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/31.jpg)
So many options
WCF
ASMX
REST
Sockets RIA
Services
Syndication
WCF Data Services
![Page 32: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/32.jpg)
Basic service access
• Silverlight supports connecting with standard web services
– WCF, ASMX
– WCF RIA Services is built on top of WCF
– WCF is preferred
• Supports binary XML
• Support for duplex communication
![Page 33: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/33.jpg)
Connect me please!
• Steps to connect to a WCF service
– Create service
• Silverlight-enabled WCF service
• “Regular” WCF service
– Implement service code
– Create WCF proxy inside Silverlight
– Write code to communicate with service
![Page 34: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/34.jpg)
ALERT!
• All communication with any service is asynchronous!
• If accessing a service in a different domain, you need a cross-domain file
– Not if running as Trusted OOB
![Page 35: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/35.jpg)
ACCESSING DATA Demo
![Page 36: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/36.jpg)
BINDING DATA
![Page 37: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/37.jpg)
What is data binding?
• Infrastructure that links properties of data objects to properties of controls
Control
Property Property
Property
Data
Property Property
Property
Target Source
Binding engine Sync support Conversions
• Exists in WinForms, ASP.NET
– SL is loosely coupled
![Page 38: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/38.jpg)
Let’s XAML a data binding!
• Source can be set – mostly through use of DataContext
– with an Element binding
– with the Source
• Data can flow – OneWay
– TwoWay
– OneTime
<TextBlock Text="{Binding FirstName}"></TextBlock>
Target control
Property on source object
![Page 39: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/39.jpg)
Let’s XAML a data binding!
• Synchronization support – Single object with INotifyPropertyChanged
– Collections with INotifyCollectionChanged
• Hook in the binding process through converters – Class that implements IValueConverter
• Validation support – ValidatesOnExceptions, ValidatesOnErrors,
ValidatesOnNotifyErrors
<TextBlock Text="{Binding FirstName}"></TextBlock>
Target control
Property on source object
![Page 40: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/40.jpg)
Those templates again
• Data templates can help achieve great effects
![Page 41: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/41.jpg)
BINDING DATA Demo
![Page 42: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/42.jpg)
REFACTORING TO MVVM
![Page 43: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/43.jpg)
What’s all the hype about?
• MVVM is
Martin Fowler
John Gossman
An architectural pattern (John Gossman/WPF)
I like WPF!
I like to write complex stuff!
Heavily based on concepts of data binding, commands and DataContext
A variation of the MVC pattern and similar to the PresentationModel (Fowler)
![Page 44: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/44.jpg)
What we all do (and just did again...)
Service
Silverlight application
Service access
Business code
ChistmasCard
Customer
Model
View (XAML + Code-behind)
Must be easy for a designer to work with
Should be easy to test and maintain for the developer
![Page 45: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/45.jpg)
Doing it the MVVM way
Silverlight application
View (XAML + Code-behind)
ViewModel Model
Properties
Commands
Service
DataContext of View is set to ViewModel (Properties, Commands)
Code-behind should be minimal (no to-test code in there!)
Can be tested, mocked...
Can be POCO, proxy...
![Page 46: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/46.jpg)
Why and why not?
• Why?
– Better SOC
– Code is easier to test and maintain (unit test the ViewModels)
– Framework supports it
• Why not?
– No clear message to the community (yet)
– Can be overkill for small apps
– More code has to be written
![Page 47: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/47.jpg)
Captain Command
• ICommand allows separating UI from functionality
<Button Command="{Binding SelectUserCommand}" CommandParameter="{Binding ElementName=UserNameTextBox, Path=Text}">
Look ma, no Click event handler!
• Only supported on ButtonBase
– Can be solved using a Blend behavior
![Page 48: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/48.jpg)
I’m convinced, where do I begin?
• Read
– Josh Smith articles on MSDN/Advanced MVVM book
– Laurent Bugnion’s site (www.galasoft.ch)
– Cinch (cinch.codeplex.com)
• Play
– MVVM Light Toolkit
– Prism
– Caliburn
![Page 49: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/49.jpg)
MVVM’ING THE WIZARD SCREENS Demo
![Page 50: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/50.jpg)
TAKING THINGS OUT-OF-BROWSER
![Page 51: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/51.jpg)
Leaving Las Browser
• SL4 has enhanced OOB mode – SL4 gives more control over
the window – Support for toasts – Possible to browse the web
inside SL
• SL4 supports Trusted SL applications – App gets more permissions
on system – In turn, user must trust the
app • Certificate support
![Page 52: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/52.jpg)
Leaving Las Browser
• Trusted apps can – talk with a service
without check for cross-domain file
– accept keyboard in full screen
– access local files • My * folders
– work with COM components
![Page 53: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/53.jpg)
TAKING THINGS OUT-OF-BROWSER Demo
![Page 54: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/54.jpg)
ACCESSING EXCEL
![Page 55: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/55.jpg)
COM interop
• Unlimited possibilities
– Office integration (Word, Outlook)
– Text-to-speech
– Access to other hardware such as scanners
• COM component can’t be part of the SL app
– Must be installed on the system
![Page 56: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/56.jpg)
EXPORTING TO EXCEL Demo
![Page 57: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/57.jpg)
CAN WE MOVE THIS TO THE CLOUD?
![Page 58: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/58.jpg)
THANKS!
![Page 59: Building an end-to-end Silverlight 4 applicationdownload.microsoft.com/download/F/A/7/FA718B0F-5706-4E65...Building an end-to-end Silverlight 4 application Write your Christmas cards](https://reader033.vdocument.in/reader033/viewer/2022053006/5f09ea9d7e708231d4291ec6/html5/thumbnails/59.jpg)
Building an end-to-end Silverlight 4 application
Write those Christmas cards with Silverlight!
Gill Cleeren Microsoft Regional Director – MVP ASP.NET .NET Architect Ordina Belgium