Silverlight 2 for Developers Alex Golesh Silverlight Lead, Senior Consultant

Slides:



Advertisements
Similar presentations
Silverlight Presenter: Kevin Grossnicklaus February 25 th, 2010.
Advertisements

Silverlight 2 CoreCLR Bringing the power of.NET to the net Andrew Pardoe, Common Language Runtime.
1 Introduction to Silverlight 1.1 Mark Smith
An Introduction To Silverlight Gergely Orosz
Developing Rich Web Applications with Silverlight Mike Ormond Developer & Platform Group Microsoft Ltd
Michael Koester Designer Marketing Manager The World of Expression.
1 1 Silverlight is a web browser plug-in. 2 2 There are two versions September 2007~October 2008 V2 is backwards compatible & where you’d start today.
Open Source Rich Internet Applications with Silverlight & Moonlight Joseph Hill Product Manager, Novell.
Discover, Master, InfluenceSlide 1 Introducing Silverlight Paul Stovell Alpha Ape, Lead Code Monkey, Readify.
Silverlight for Developers making it pass the glitz.
Ronnie Saurenmann Principal Architect Microsoft Switzerland
Introduction & Welcome Marcus Perryman Mike Taulty
Ronnie Saurenmann Principal Architect Microsoft Switzerland.
The Web: Developing compelling sites and applications 19 th September Mark Johnston.
What’s new in ASP.NET 3.5? Mike Ormond Developer & Platform Group Microsoft Ltd
It’s always better live. MSDN Events Developing ASP.NET AJAX Controls with Silverlight.
BESUG Keynote  Gill Cleeren Microsoft Regional Director Benelux MVP ASP.NET Software architect Ordina  Blog:  Mail:
Building Silverlight 2 Applications (Parts 1 and 2)
Michael S. Scherotter Microsoft Corporation
Part 2 (Mike) Control Templating Custom Controls Custom Layout OpenFileDialog HTML Integration Deep Zoom Local Storage Q&A Part 1 (Joe) Overview Getting.
WinFX – A Lap Around the Windows Presentation Foundation Bart J.F. De Smet MVP Visual C#
MVC New release IE8 Beta 1 Deep Zoom (sea dragon) Silver light 2.0 Beta 1 Expression Blend 2.5 Preview Instant Messaging API Enhancements to Virtual Earth.
2 A First Look at Windows Presentation Foundation Everywhere ("WPF/E") Joe Stegman Lead Program Manager Microsoft Corporation.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Introduction to Silverlight By Alan Cobb 2008-Jan-10 Sacramento, CA
Web programmeringSilverlight NOEA / PQC 2007 Silverlight From: Gill Cleeren blog.n-technologies.be.
Intro to Silverlight Kevin Grossnicklaus. Introductions Kevin Grossnicklaus – SSE - ( ) Chief Architect Software.
A Jumpstart to WPF by Kevin Grossnicklaus ArchitectNow.
Silverlight Hitesh Trivedi Computer Science B.Tech A-Sec J.I.E.T.
Ronnie Saurenmann Principal Architect Microsoft Switzerland blogs.msdn.com/swiss_dpe_team.
Sascha P. Corti Microsoft Switzerland
The Web Architecture and ASP.NET. Slide 2 Review of the Web (1) It began with HTTP and HTML, which delivers static Web pages to browsers which would render.
Silverlight Technology. Table of Contents 1.What is Silverlight Technology? 2.Silverlight Overview. 2.1 How it works 2.2 Silverlight development tools.
Building RIA for Desktop, Web and Mobile using Silverlight and WPF Giorgio Sardo UX Consultant, Microsoft UK blogs.msdn.com/Giorgio.
Rich Internet Applications 8. Other RIA technologies.
The Microsoft Technical Roadshow 2007 Rich Client Development in XAML Mark Johnston Developer & Platform Group Microsoft Ltd
Microsoft Silverlight An Introduction. Silverlight is a cross-browser, cross-platform plug-in* * An auxiliary program that works with a software package.
New Features Overview. Agenda Silverlight - Intro Silverlight 3 New Features Overview with Demos, Demos and Demos… RIA Services Overview Demos, Demos,
Overview of Silverlight Mike Taulty Developer & Platform Group Microsoft Ltd
Developing ASP.NET AJAX Controls with Silverlight Barry Gervin Microsoft Regional Director John Bristowe Developer Advisor, Microsoft.
Silverlight 2 Andrew Pardoe Program Manager CLR Execution Engine
Silverlight for Web Hosting Companies Michael S. Scherotter Microsoft Corporation
Mike Taulty Developer & Platform Group Microsoft Ltd
Building Excellent Internet & Intranet Solutions Dave Remmer Architect Advisor Microsoft Canada
Contents : What is Silverlight? Silverlight Overview Silverlight Toolkit Overview Timeline & Packaging Silverlight V1.0 & V1.1 Properties of V1.0 Properties.
© Copyright SELA software & Education Labs Ltd Baruch Hirsch St.Bnei Brak Israel
Chris J.T. Auld – Director, Intergen
1 Catching up on Rich Clients (round 1) Mike Ormond, Mike Taulty Developer & Platform Group Microsoft Ltd
1 Välkommen till Sommarkollo Windows Presentation Foundation Per Östman ISV Developer Evangelist
.NET Framework Presentation. About Me Patrik Löwendahl –C# MVP –Certified Vista Touchdown Trainer Cornerstone
Michael Kordahi delicategeniusblog.com From Rich to Reach Silverlight 2 and IE8.
Silverlight 101 Ahead! If you know Silverlight and are looking for more advanced content check out : ‘Microsoft Silverlight “Media” : Moving at 60fps’
Eben de Wit Developer Advisor Microsoft
An Introduction to Developing Applications for Microsoft Silverlight Jaime Rodriguez
Microsoft’s Rich Web Technology XAML,WPF and WPF/E July, 2006 John Allwright.
Windows Presentation Foundation. User Experience: Recent Past Web HTML Sacrificed UX for portability, connectivity and simplicity 1997 – DHTML.
Microsoft Silverlight An Introduction. Silverlight is a cross-browser, cross-platform plug-in* * An auxiliary program that works with a software package.
Part of the Microsoft.NET Framework 3.0 Tomer Shamam.NET Technologies Expert Sela Group
Programmiersprache Entwickeln mit Visual Basic.NET?
Nikhil Kothari Software Architect, Microsoft Corporation WEB317.
Introduction to Silverlight Development Pavel Yosifovich CTO, Matrix Global; Senior Instructor, Hi-Tech College
Rajesh Lal ( ) Microsoft Silverlight An Introduction Rajesh Lal ( )
Rajesh Lal ( ) Microsoft Silverlight An Introduction 51PPT模板网 搜集整理 Rajesh Lal (
Introduction to Silverlight
Microsoft Silverlight
.NET and .NET Core 7. XAML Pan Wuming 2017.
Silverlight Technology
Overview of Silverlight 2
Silverlight 2 Mike Taulty Developer & Platform Group Microsoft Ltd
Windows Presentation Foundation
Presentation transcript:

Silverlight 2 for Developers Alex Golesh Silverlight Lead, Senior Consultant

Agenda Silver… what? Why Silverlight? Give Me the Details! How Silverlight? When Silverlight? Q&A Summary

What is Silverlight? Client Side RIA Application Browser Plug-In Cross-platform, cross-browser, cross-device

What is Silverlight? Browser Plug-In: Silverlight Runtime.NET programming model Vector UI: Text, Graphics, Animation Doesn’t requires.NET on client machine.NET development platform ASP.NET Integration

BrowserBrowserDevices,MobileDevices,Mobile DesktopDesktop Server, Services Why Silverlight? Rich Experiences

Why Silverlight? Enables a rich.NET development platform that runs in the browser Developers can write Silverlight applications using any.NET language (including VB, C#, JavaScript, IronPython and IronRuby).

BrowserBrowserDevices,MobileDevices,Mobile DesktopDesktopServer & Services Server Silverlight is a.NET technology.NET.NET Silverlight extends your.NET Reach.

Why Silverlight? New application model Compressed package format (.XAP) Cross domain package loading Splash screen Supports application localization Accessibility Managed programming model C#, Visual Basic or other DLR Most platforms and Browser

Silverlight.NET Subset.NET for Silverlight is a factored subset of full.NET. NET 3.5 ~200 MB (Windows only) Desktop ~50 MB (Windows only) Silverlight ~4 MB (cross platform) Additional libraries available as extensions Same APIs, tools and skills Highly compatible Moving from Silverlight to desktop.NET with minimal changes Source, but not binary compatible

Silverlight Architecture XAMLXAML Browser Host Integrated Networking Stack DOM Integration Installer JavaScript Engine Presentation Core.NET for Silverlight Inputs Keyboard Mouse Ink Media WMV / VC1 WMA MP3 Controls Layout Editing UI Core 2D Vectors Animation Text Images Transforms DRM Media Dynamic Languages RubyPython BCL Generics Collections Web Services REST RSS SOAP POX JSON Data LINQLINQ-to-XML WPF for Silverlight Extensible Controls Common Language Runtime ASP.NET AJAX Libs Server Silverlight 1 Silverlight 2 Legend

Media and User Interface

Presentation Core – Graphics 2D Graphics Vector based Standard shapes and Paths Masking and clipping Transformations: skew, rotate, scale, translate, matrix Animation Basics Time-based Support linear, discrete and spline animation Animatable property types: Double, Color, Point Animations and graphics can be defined using XAML or code

Presentation Core - Video Quality High Definition video VC-1 codec Interactivity Video is a first class citizen Media Markers Video brush Cost of ownership Windows Media Server Adaptive streaming Byte range seeking Windows Live Streaming Throttling (with IIS7) Formats Video: VC-1, WMV v7,v8,v9 Audio: WMA V7, V8, V9, MP3, WMA 10 Pro Content protection PlayReady DRM for online viewing

Declarative Programming Through XAML Extensive Application Markup Language Toolable, declarative markup Code and content are separate Compatible with Windows Presentation Foundation OK LightBlue XAML Button b1 = new Button(); b1.Content = "OK"; b1.Background = new SolidColorBrush(Colors.LightBlue); b1.Width = 100; C# Dim b1 As New Button b1.Content = "OK" b1.Background = New _ SolidColorBrush(Colors.LightBlue) b1.Width = 100 VB.NET

Demo XAML, Code Behind

Controls Core controls in box Button, ListBox, CheckBox, RadioButton, Hyperlink, Slider, ScrollBar, ScrollViewer, ProgressBar, TextInput, etc. Core layout containers in box Grid, Stack panel, Canvas, etc. Other controls shipped as extensions DataGrid, Menus, ToolBar, etc. Controls ship with source

Demo Controls, Toolkit

Styling and Templating support Controls supports styling Controls supports templating

Data Templates DataTemplate <Border BorderBrush="Blue" BorderThickness="2" Background="LightGray" Margin="10" Padding="15,15,15,5"> <Border HorizontalAlignment="Center" BorderBrush="Navy" Background="#DDF“ BorderThickness="1" Margin="10" Padding="3"> class Car { string Image {get;set} string Model {get;set] }

Databinding Two way data binding from User interface to business objects Notification via INotifyPropertyChanged DataContext is inherited via Visual Tree From XAML From code Binding binding = new Binding("Nasdaq.Points"); binding.Mode = BindingMode.OneWay; TextBlock tb = new TextBlock(); tb.SetBinding(TextBlock.TextProperty, binding);

Demo Styling, DataBinding

DeepZoom Navigates images of any size and resolution optimizing network bandwidth and download size. Seamless transitions as you zoom and pan.

Demo DeepZoom

Networking

Asynchronous HTTP requests GET/POST Access to most headers, cookies, Uses browser networking stack Caching, authentication, proxy, compression

Web Services SOAP 1.1 Basic profile A few restrictions (e.g. SOAP Faults not supported) Asynchronous invocation Follows cross-domain policy restrictions Generated proxies support data binding

Sockets TCP only Asynchronous API No explicit bind and no listen/accept support Restricted ports ( ) void Connect(AddressFamily family) { SocketAsyncEventArgs connectArgs = new SocketAsyncEventArgs(); connectArgs.RemoteEndPoint = new DnsEndPoint( Application.Current.Host.Source.Host, 4502); connectArgs.Completed += new EventHandler (OnConnectCompleted); socket = new Socket(family, SocketType.Stream, ProtocolType.Tcp); if (!socket.ConnectAsync(connectArgs)) OnConnectCompleted(socket, connectArgs); }

Cross-domain support 2 formats: Flash policy file Silverlight policy file <!DOCTYPE cross-domain-policy SYSTEM " domain-policy.dtd"> Cross-domain.xml clientaccesspolicy.xml "

Demo CarAds WebService, Flickr API REST

Extending the sandbox (safely)

OpenFileDialog Provides native OS experience Sandboxed API returns safe filename and readable stream Support for multiple files // Create file dialog OpenFileDialog ofd= new OpenFileDialog(); ofd.Filter = "Text Files (*.txt)|*.txt|All files (*.*)|*.*"; if (ofd.ShowDialog() == DialogResult.OK) {

Isolated Storage Stream based access to a private file/directory structure Patterned after.NET Framework IsolatedStorage classes Read and write string or binary data Store is per application XAP Application code to request size increase User prompt to accept quota increase Quotas fall into predetermined size slots Code must initiate increase size call from within user input/event

HTML and Silverlight Integration

HTML/AJAX and.NET integration webpage HTMLHTMLSilverlightSilverlight HTMLHTML HTML+SilverlightHTML+Silverlight

Working with HTML/Javascript HtmlObjectHtmlObject ScriptObjectScriptObject HtmlDocumentHtmlDocument HtmlWindowHtmlWindow HtmlElementHtmlElement

Access the HTML DOM from Managed Code HTML access available in new namespace HtmlPage.Navigate(" String server = HtmlPage.DocumentUri.Host; HtmlPage.Navigate(" String server = HtmlPage.DocumentUri.Host; using System.Windows.Browser; HtmlElement myButton = HtmlPage.Document.GetElementByID("myButtonID"); myButton.AttachEvent("onclick", new EventHandler(this.myButtonClicked)); private void myButtonClicked(object sender, EventArgs e) {... } HtmlElement myButton = HtmlPage.Document.GetElementByID("myButtonID"); myButton.AttachEvent("onclick", new EventHandler(this.myButtonClicked)); private void myButtonClicked(object sender, EventArgs e) {... } Static HtmlPage class provides entry point Hookup events, call methods, or access properties

Access Managed Code from JavaScript 1.- Mark a property, method or event as [Scriptable] HtmlPage.RegisterScriptableObject ("EntryPoint", this); [ScriptableMember] public void Search(string Name) {... } [ScriptableMember] public void Search(string Name) {... } var control = document.getElementById("SilverlightControl"); control.Content.EntryPoint.Search(input.value); var control = document.getElementById("SilverlightControl"); control.Content.EntryPoint.Search(input.value); 2.- Register a scriptable object 3.- Access the managed object from script

Demo HTML DOM

Tooling and.NET platform

Designer/Developer Collaboration

Platform, Services & Tools web desktop media & RIA web desktop Designer Look, behavior, brand, and emotional connection Developer Function, deployment, data, security, operational integrity Windows Live Services Windows Server 2008

DesktopDesktop Media & RIA Media Server, Services Tooling Designer Look, behavior, brand, and emotional connection Developer Function, deployment, data, security, operational integrity Server Vista XAML

Silverlight and ASP.NET/AJAX Integration Two ASP.NET server controls Both ship in SDK: System.Web.Silverlight.dll Deploys to /bin folder Available at design-time within Visual Studio Corresponding AJAX types Both server controls provide client-side Javascript types as well

Silverlight and WPF Silverlight is a subset of WPF Plus a few extra web features and its own codecs Reuse strategy Same skills Same tools Same XAML and UI Silverlight code should run on WPF with minor changes

When Silverlight? Silverlight v1.0 RTM Silverlight 2 RTW Future release: Silverlight for Mobile “Next Version” of Silverlight

Questions?

Summary More Information & Downloads Silverlight Homepage Silverlight Quick Starts Silverlight Showcase My blog Get in touch

THANK YOU!