9. multitargeting
demo drag/drop designer
properties window
•resources, binding, brushes, etc.
data sources window
document outline window
assembly sharing
general VS 2010 goodness
•latest languages, framework, profiler support, etc.
10. MVVM support
demo sample data for CLR objects
animating layout changes
animating listbox item states
state transitions with effects
PathListBox
behaviours, actions, triggers
13. controls
RichTextBox, Viewbox
right to left layouts via FlowDirection
implicit styling
additions
SelectedValue[Path] on Selectors (e.g. ComboBox)
text trimming on the TextBlock
better column layout on the DataGrid + copy/paste
14. data-binding and validation
easier, more natural bindings
target of bindings is now DependencyObject not
FrameworkElement
new {binding} capabilities
TargetNullValue, FallbackValue, StringFormat, string indexers
new validation capabilities
validate types implementing IDataErrorInfo
validates types implementing INotifyDataErrorInfo
15. networking
Client networking stack for HTTP
integrated authentication (automatic/pass-thru)
caching, upload progress, referer header, connections
Sockets
TCP security policy – opt to download via HTTP
UDP multicasting to [any/single] source groups
Windows Communication Foundation
addition of a TCP channel
16. improved pluggable navigation system
navigate: http://booksite/default.aspx#/authors/steinbeck
navigate: /authors/steinbeck
Frame
ContentLoader
UriMapper
Uri MappedUri
/authors/{author} /views/authors.xaml?surname={author} Asynchronously turns the URI
/{pageName} /views/{pagename}.xaml into a Page or UserControl
17. media
video – support added for
offline DRM and output protection
Windows Media Server multicasting
imaging
hardware accelerated DeepZoom imaging
all PNG formats supported
22. trusted applications
Silverlight 4 introduces the trusted application
only for out of browser applications
indicated by metadata setting in the XAP’s manifest
• different installation experience
– can be verified or unverified ( no auto update )
• can be blocked by group policy settings
23. different types of Silverlight 4 apps
• relaxed sandbox for trusted applications
– no network restrictions on ports and x-domain/x-scheme access
– operations which require user initiation or consent relaxed
– open access to files in my [documents/videos/pictures/music]
– ability to access full file paths from file open/save dialogs
– access to the keyboard in full screen mode
– window options – alter chrome and offer alternate move/resize
24. COM interoperability
• trusted applications can call to COM code
– IDispatch interface only
– must be registered with a ProgId IDispatch
• programmability is via late binding must have a
– dynamic in C#
– no IntelliSense or compile time checking progId
• no deployment mechanism COM
– for existing code rather than new code Object
• COM is Windows only
28. WCF Data Services
RESTful service stack implementing the
Open Data Protocol ( www.odata.org )
Silverlight client stack improvements
cross-domain access to a data service
automatic change tracking of client-side entities
arbitrary projections of data
support for paging & result-set counts
29. the Managed Extensibility Framework
the Managed Extensibility Framework
“an extensible framework for composing
applications from a set of loosely-coupled parts
discovered and evolving at run-time“ (mike)
versions
.NET Framework shipping with Silverlight 4
.NET Framework 4 shipping with VS 2010
Codeplex source for Silverlight 3 & .NET 3.5 Sp1
30. essence of MEF extensible set of catalogs which
discover & describe availablee.g. ISpellChecker
components
e.g. ISpellChecker
component catalog
import MEF export
Composition component catalog
component Engine
component
...
search for export(s)
e.g. WordProcessor that matches import component catalog
e.g. SuperSpellChecker
31. essence of MEF
MEF’s engine can monitor its catalogs
and update this relationship based on additions over run-time
import export
component component
e.g. another ISpellChecker shows up in a catalog?
32. one application of MEF in Silverlight
MyApp.xap
initial, small download
Extras.xap
34. WCF RIA Services RIA Services
client server
• tooling
• framework
• services
Service Data • pattern
?
Domain
Access Access
Context Domain
Domain
Presentation Service
Domain
Service
Domain
Service
Service
App App
Logic Logic
code sharing and generation