390 likes | 502 Views
Introduction to Silverlight 2 Creating the next generation of Rich Internet Applications. Sascha P. Corti Developer & Platform Evangelism Microsoft Switzerland sascha.corti@microsoft.com http://www.corti.com/weblogsascha http://blogs.msdn.com/swiss_dpe_team. Agenda.
E N D
Introduction to Silverlight 2Creating the next generation of Rich Internet Applications Sascha P. Corti Developer & Platform Evangelism Microsoft Switzerlandsascha.corti@microsoft.com http://www.corti.com/weblogsascha http://blogs.msdn.com/swiss_dpe_team
Agenda • What is Silverlight? (And why use it?) • Silverlight 2 • Architecture • Technical Drilldown • Streaming Media Solutions • Local Isolated Storage • Deep Zoom • Mobile Devices
What is Silverlight? And why use it?
Microsoft Silverlight • cross-browsercross-platform • cross-device • Plug-In • for building and delivering the next generation of • .NET based • Media Experiences • and • Rich Interactive Applications • for theWeb
Why Silverlight? WindowsPresentationFoundation Server, Services Desktop RichUserExperiences Browser Devices, Mobile
Silverlight is a .NET Technology Server, Services Desktop Microsoft.NETFramework Browser Devices, Mobile .NET Extends Developer’s Reach
Designer & Developer Tooling Server, Services Desktop Windows Server Vista WindowsPresentationFoundation Browser Devices, Mobile CompactFramework Designer Look, behavior, brand,and emotional connection Developer Function, deployment, data,security, operational integrity Silverlight
Paper JPG / TIFF PSD PPT MOV / WMV C++ C# VB.NET XAML XHTML CSS / XSLT XML ASP.NET Javascript AJAX Non Standards ‘Dirty Code’ Mockups Unifying Design / Development Designer Look, behavior, brand,and emotional connection Developer Function, deployment, data,security, operational integrity
Tools of the Trade Subscription Web Design Tool (HTML, CSS) Subscription Interactive Design Tool (XAML in Silverlight, WPF) Media Asset ManagementTool Media Encoding Tool(Silverlight Video Encoding) Web Edition optimized for Silverlight Vector Graphic Design Tool (XAML Design) Developer Designer
Eclipse Tools for Microsoft Silverlight • http://www.eclipse4sl.org/ • Eclipse plug-in: Open Source RIA application development environment for Microsoft Silverlight in Eclipse • Facilitate integration of Silverlight applications into Java-based web sites and services XAML Editor with instant preview C# Editor Silverlight ProjectManagement Build & Run
Silverlight Versions Compared(and WPF too) WindowsPresentationFoundation Silverlight 1 Silverlight 2
Silverlight 2 Architecture Map .NET for Silverlight Server WPF for Silverlight Silverlight 1.0 Local Storage Data .NET Support Inputs Media Extensible ControlsStyles, Templates Silverlight 2 LINQ LINQ-to-XML VB.NET C# Keyboard WMV / VC1 Web Services ASP.NET AJAX Libs WMA Mouse Legend Dynamic Languages Ink MP3 BCL Syndication APIs RSS • REST SOAP <asp:xaml> Ruby Python Generics Collections POX JSON <asp:media> Threading Crypto API Common Language Runtime XAML UI Core Controls DRM 2D Vectors Images Layout Media Animation Transforms Editing Text Deep Zoom Presentation Core Integrated Networking Stack Browser Host DOM Integration JavaScript Engine Installer
Application Package code file (.cs ,.vb) code file (.cs ,.vb) code file (.cs ,.vb) Cs.exe MyApp.dll MyApp.xap XAML XAML <media> as resources Business.dll Business.dll <media> as content . Manifest.xml
Full HTML DOM Integration if (HtmlPage.Document.DocumentUri.AbsoluteUri.EndsWith("TestPage.html") != true) return; HtmlElementbtnUC = HtmlPage.Document.GetElementById("buttonUCtext"); btnUC.AttachEvent("onclick", new EventHandler<HtmlEventArgs>(this.OnUCtextClicked)); btnUC.SetProperty("disabled", false); btnUC.SetAttribute("value", "This text from the Silverlight Side"); HTML Document Write Business Logicin Managed Code andcall from JavaScript Very easy to debug JavaScript <script type="text/javascript"> function onClickButton() { var control = document.getElementById("Xaml1"); control.content.MyControl.Hello("Silverlight"); control.content.findName("tb").Text = "Hello Silverlight"; } </script>
Technical Drilldown Silverlight 2
.NET Support* C# and VB.NET* LINQ* XML APIs* Generics* HTML Integration* JSON Serializer Local storage* Crypto APIs (AES)* Threading* Silverlight 2 Runtime Features • 2D, Graphics • Audio, Video • Animations • Text, Text Input* • Controls* • Layout* • Styles/Templates* • Data Binding* • Networking • HTTP/S and Sockets* • * New in Silverlight 2
Silverlight Control Toolkit • Shared Source Control Library • Fully Templateable • Maintained on http://www.codeplex.com/Silverlight
Grid Layout • Subset of WPF Layout Controls • Layout containers • Canvas, Grid, StackPanel, Border • Layout properties • Width, MinWidth, MaxWidth, ActualWidth • Height, MinHeight, MaxHeight, ActualHeight • Margin and Padding • Layout extensibility Canvas StackPanel 11:40 - 12:40 Einführung in Silverlight 2 Stylen von Silverlight-Applikationenmit Expression Blend See thisSession
Data Driven SL Apps Asynchronous Calls Only “Mashup APIs” “Web APIs” REST Services “POX” Services JSON Services • Build URL • Make Request with WebClient / HttpWebRequest • Work with Request/Response Data (XML or JSON) Human-Readable Service Description • Use built-in SyndicationFeed Class • Access Items through SyndicationItemCollection • Can Read / Write Feeds RSS / ATOM Feeds Standards-Based Service / API WCF Service SOAP Service Add Service Reference Works like a local Class 13:40 - 14:40 Einführung in Silverlight 2 Architecting data-driven applications with Silverlight 2 (e) See thisSession Self-Describing Service (WSDL)
StreamingMedia Solutions Silverlight 2 15:00 - 16:00 Die Highlights der Windows Live Platform: Virtual Earth, Silverlight Streaming und Live Mesh See thisSession
Silverlight Media Features • Self-contained Media Playback • Non-Rectangular, Semi-Transparent Video with Overlays • Media Markers / Script Commands • Playready DRM Content Protection • Progressive download and Windows Media Services support • Live and On-Demand Streaming • File Formats accepted by the MediaElement • Video: WMV v7, v8, v9, VC-1 • Video: WMV v10 [Silverlight 2] • Audio: WMA v7, v8, v9 (standard), MP3 • Recent Announcements • H.264 support • IIS Smooth Streaming
Local Isolated Storage • Like Cookies but more Powerful • Provides initial 1MB of Application specific Local Storage • Two stores: • Site wide Store • accessible to all Apps on that Site • Application Store • Not Expiring, Provide full Control • Exposed through .NET IsolatedStorage APIs
Local Isolated Storage • App Prompt to Increase Storage • End User Control • Storage Management
Full Screen & Security • Takes over main monitor • Frees you from browser chrome • Limits input to a few non-alpha chars • Up,Down,Left, Right, PgUp, PgDn, Tab, Home,End.. • Secure/Extended sandbox • Cross-domain • Isolated Storage • Sockets • OpenFileDialog • One level of trust - No Elevation
Deep Zoom • Seamless Viewing & Zooming of huge Images • Loads only the Data necessary to show the Part of an Image the User is Viewing • Lowest Resolution Tiles shown first • Download Higher quality Tiles and blend in • Deep Zoom Composer breaks Image into Tiles • Export as Deep Zoom Image or Collection • Exposed through MultiScaleImage Control
Deep Zoom Demo
Silverlight 2For Mobile Devices BrandNew!
Silverlight 2 for Mobile • Public CTP in Spring 2009 Versatile • Desktop-mobile continuum • Powerful .NET programming model • Homogenous application platform across large number of devices • RIAs with modern user interface • Mobile optimized experiences Ubiquitous Productive
Silverlight 2 Mobile Facts • Silverlight 2 Mobile Runtime • Silverlight 2 Apps “just work” • .NET Compact Framework leveraged • Considerations • User Input • Form Factor & Screen Resolution • Connectivity • Resources • Mobile Dev Team: http://blogs.msdn.com/mobiledev • Windows Mobile Team: http://blogs.msdn.com/windowsmobile
Silverlight 2: Resources • Community Site: http://silverlight.net • Main Product Site: http://www.microsoft.com/silverlight • MSDN Center: http://msdn.microsoft.com/silverlight • Online Forums: http://silverlight.net/forums • Expression Blog: http://blogs.msdn.com/expression • Lots of great news on Deep Zoom • Top Silverlight Blogs • Tim Sneath: http://blogs.msdn.com/tims • Mike Harsh: http://blogs.msdn.com/mharsh • Joe Stegman: http://blogs.msdn.com/jstegman • Laurence Moroney: http://blogs.msdn.com/webnext • Ernie Booth: http://blogs.msdn.com/ebooth • Swiss DPE Team: http://blogs.msdn.com/swiss_dpe_team
© 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.