Upload
softengine
View
521
Download
1
Embed Size (px)
Citation preview
4.0 Supote Phunsakul Microsoft MVP ASP/ASP.NET http://codetoday.net http://twitter.com/SoftEngine
Software Requirements
• Visual Studio 2010 • Silverlight 4 Tools • Silverlight 4 Toolkit • Expression Blend 4 • SQL Server 2008 R2
What Is User Experience?
Designer-Developer Productivity
Designer-Developer Productivity
What is XAML?
Extensible Application Markup Language XAML
UI defini)on (for designers)
Create Structure
Lay-‐Out UI elements
Create and define UI elements
Animate UI elements
Code
Interac;vity & logic
+
UI defini;on
Declarative Programming Through XAML
• Easily toolable, declara)ve markup • Code and content are separate • Can be rendered in the browser / standalone applica)on
BuAon b1 = new BuAon(); b1.Content = "OK"; b1.Background = new SolidColorBrush(Colors.LightBlue); b1.Width = 100;
C#
Dim b1 As New BuAon b1.Content = "OK" b1.Background = New _ SolidColorBrush(Colors.LightBlue) b1.Width = 100
VB.NET
<BuAon Width="100"> OK <BuAon.Background> LightBlue </BuAon.Background> </BuAon>
XAML
What’s Silverlight? • Cross-browser, Cross-platform Technology.
• Lightweight download.
• Provides a rich model for 2D drawing.
• Including buttons, text boxes, lists, grid and etc.
• Have a time-based animation model.
• Provides playback of Media Audio, Video.
• Includes a scaled-down version of the CLR.
• Can call ASP.NET Web Services or Windows Communication Foundation (WCF)
• Silverlight data binding provides a convenient way to display large amounts of data.
What’s Silverlight?
Silverlight and Flash RIA – Rich Internet Application
VS.
History of Silverlight
Silverlight 1.0 Beta Silverlight 1.1 Alpha
Silverlight 1.0 Silverlight 2 Beta
Silverlight 3 Beta Silverlight 3 Silverlight 4 Beta
Silverlight 2
Silverlight 4
Silverlight 1.0
X-Browser X-Platform
Designer / Developer Workflow
High Quality Audio/Video
Auto-Updater Animation &
Vector Graphics
Skills Reuse (AJAX)
Silverlight 2
High Performance
Runtime
Flexible Data Access
Rich UI Controls & Deep Zoom
Content Protection
Robust Networking
Role-Based Tools & DLR
Silverlight 3
Out of Browser GPU Acceleration
Navigation & Validation
H.264 / AAC Perspective
Transforms & Pixel Shaders
Silverlight Toolkit
Silverlight 4
Elevated Trust Printing Webcam / Mic
Rich Text & HTML Hosting
Input Improvements
Localized to 41 Languages
Silverlight 4 Beta Out of Browser Applications
Elevated Privileges Support (including Automation)
HTML Hosting Support Notifications
Media WMS Multicast Support
MP4 Playback Protected by PlayReady DRM Offline DRM Output Protection
WebCam/Mic Support (raw stream only)
Printing Printing Support
Text RichTextBox
Arabic and Hebrew Text Support IME Improvements for TextBox
UIElement.TextInput event
Controls, Control Model, Layout Theming via Implicit Styles ViewBox
RTL Layout DataGrid * Column Support ItemsControl support for Blend Fluid Layout
MouseWheel Support on ScrollViewer, TextBox, ComboBox, Calendar, DatePicker VisualStateGroup.CurrentStateGroup property
Command Property on ButtonBase & Hyperlink SelectedValue and SelectedValuePath Properties on Selector
Navigation Navigation Loader Extensibility (Hook Frame Navigates)
Databinding Improvements DataBinding Support for DependencyObjects
StringFormat, TargetNullValue & FallBackValue Properties on Binding Binding to String Indexers IDataErrorInfo Support
Asynchronous Data Validation (INotifyDataErrorInfo) ObservableCollection<T> IList/IEnumerable cstrs
Graphics/Imaging Support for more PNG Formats
Unseal Path CompositeTransform
Networking UDP Listener
Automatically Adding Referer Header Authentication Support on ClientHttpWebRequest
Memory Usage Fix During Progressive Downloads
Tools Support Dispatcher Support on the Tools Design Surface
SDK ADO.NET Data Services 2.0 Support
Managed Extensibility Framework (MEF) Better Transport for WCF (Socket Support)
Other Support for C# & VB.NET 4.0 Features
Expose Runtime Version to 3rd Party DLLs NGEN Support for Core Runtime Binaries Group Policy Hooks to Disable WebCam & Elevated Apps
Silverlight 4 RC Parser
New architecture enables future innovation
Performance and stability improvements XmlnsPrefix & XmlnsDefinition attributes Support setting order-dependent properties
Input Pinned full-screen mode on secondary display HTML hosting accessibility Arabic, Hebrew and Thai input on Mac
Rich Text Text position and selection APIs RichTextBox.Xaml property for serializing text content XAML clipboard format
FlowDirection support on Runs “Format then type” support
Thai & Vietnamese input support UI Automation Text pattern
Networking UploadProgress support (client stack)
Caching support (client stack) Sockets policy file retrieval via HTTP
Accept-Language header
Out of Browser / Elevated Trust XAP signing Silent install and emulation mode
Custom window chrome Better support for Automation Cancelable shutdown event
Updated security dialogs Sockets security restrictions removal
Media Webcam/Mic configuration preview
More descriptive MediaSourceStream errors Updates to H.264 content protection (ClearNAL) Digital Constraint Token
CGMS-A Graphics card driver validation & revocation
Graphics/Imaging Hardware-accelerated Perspective Transforms
Ability to query page size and printable area Memory usage and perf improvements
Data Entity-level validation support of INotifyDataErrorInfo for DataGrid XPath support for XML
SDK System.Numerics.dll
System.Xml.XPath.dll Dynamic XAP support (MEF) Frame/Navigation refresh support
Other Support for 32 new languages (41 total) Update to DeepZoom code base with HW acceleration Support for Private mode browsing
Google Chrome support (Windows) FrameworkElement.Unloaded event
IsoStore perf improvements
Parser • New architecture enables future
innovation • Performance and stability improvements • Support setting order-dependent
properties • XmlnsPrefix & XmlnsDefinition attributes
Input • Mouse wheel support
– ScrollViewer, TextBox, ComboBox, Calendar, DatePicker • Pinned full-screen mode on secondary display • HTML Hosting accessibility • Arabic, Hebrew, Indic, Thai input and render
Rich Text • RichTextBox control • Text position and
selection APIs • “Xaml” property for
serializing text content • XAML clipboard format
• “Format then type” support
• UI Automation Text pattern
• FlowDirection support on Runs
Networking
• UDP Listener • Automatically Adding Referer Header • Authentication Support on ClientHttpWebRequest • UploadProgress support (client) • Caching support (client) • Sockets policy file retrieval via HTTP • Accept-Language header
Out of Browser
• Support for Automation (native integration) • HTML Hosting • Notifications • XAP signing • Silent install and emulation mode • Custom window chrome • Better support for COM Automation • Cancelable shutdown event • Updated security dialogs • Sockets security restrictions removal
Media
• MP4 Playback Protected by PlayReady DRM • Offline DRM • Output Protection
– Updates to H.264 content protection (ClearNAL) – Digital Constraint Token – CGMS-A – Graphics card driver validation & revocation
• Webcam/Mic configuration preview • More descriptive MediaSourceStream errors • Content & Output protection updates
Graphics & Printing
• Support for more PNG Formats • CompositeTransform • HW accelerated Perspective Transforms • Memory usage and perf improvements • Printing support
– Ability to query page size and printable area
Data
• IDataErrorInfo Support • Entity-level validation support of
INotifyDataErrorInfo for DataGrid • StringFormat, TargetNullValue &
FallBackValue Properties on Binding • Binding to String Indexers • XPath support for XML
Wait, there’s more…
• NGEN Support for Core Runtime Binaries • Support for 32 new languages (41 total) • Theming via Implicit Styles • Support for Private mode browsing • Google Chrome support (Windows) • Group Policy Hooks to Disable WebCam, Elevated
Apps, etc. • IsoStore perf improvements • SDK
• System.Numerics.dll & System.Xml.XPath.dll • Dynamic XAP support (MEF) • Frame/Navigation refresh support
Graphics
• Both vector and raster assets are supported
• Raster – Photoshop (PSD) import – PNG 8/24 – JPG
• Vector – Illustrator Import – XAML Shape Class (Ellipse, Line, Path, etc.)