Introducing Silverlight 2. Agenda Silverlight architecture XAML CoreCLR The Silverlight Base Class Library Silverlight security Your first Silverlight.

Slides:



Advertisements
Similar presentations
Developing Cross-platform Web Browser Plugins and Extensions Bc. Márius Šajgalík PeWe seminar,
Advertisements

Silverlight 2 CoreCLR Bringing the power of.NET to the net Andrew Pardoe, Common Language Runtime.
WPF vs Silverlight Stuart Haas. WPF  Windows Presentation Foundation  Included in Vista, Server 2008 and XP service pack 2  Deployed in desktop and.
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
Agenda Overview of Silverlight Technology Map Suite Silverlight Beta Edition Features & Benefits Demonstration Where to Get Help and Learn More Q&A 2.
Open Source Rich Internet Applications with Silverlight & Moonlight Joseph Hill Product Manager, Novell.
CIM2564 Introduction to Development Frameworks 1 Overview of a Development Framework Topic 1.
The Microsoft’s solution for building cross-platform Rich Internet Applications.
T.N.C.Venkata Rangan CMD, Vishwak Solutions Pvt. Ltd. Microsoft (MSDN) Regional Director, Chennai Microsoft MVP – Windows Live Platform Living with Heterogeneity.
Silverlight for Developers making it pass the glitz.
Microsoft ASP.NET AJAX - AJAX as it has to be Presented by : Rana Vijayasimha Nalla CSCE Grad Student.
Keith Elder Microsoft MVP It’s the new wave…man…..
The Web: Developing compelling sites and applications 19 th September Mark Johnston.
It’s always better live. MSDN Events Developing ASP.NET AJAX Controls with Silverlight.
Silverlight Development Win Phone 7 Mohammed M. Melhem Senior ICT Assistant: Application Silverlight and Win Phone.
Building Silverlight 2 Applications (Parts 1 and 2)
Michael S. Scherotter Microsoft Corporation
Building Windows Apps Jason Keicher, Technical Specialist
RIA Introduce Comparison among several technology.
Windows.Net Programming Series Preview. Course Schedule CourseDate Microsoft.Net Fundamentals 01/13/2014 Microsoft Windows/Web Fundamentals 01/20/2014.
Computer science Languages, etc.. Overview For web-applications (HTML, JS) – Designing languages (HMTL, CSS) – Server Languages (PHP, ASP) – Extensions.
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.
1 Introduction to.NET Framework. 2.NETFramework Internet COM+ Orchestration Orchestration Windows.NET Enterprise ServersBuildingBlockServices Visual Studio.NET.
ASP.NET + Ajax Jesper Tørresø ITNET2 F08. Ajax Ajax (Asynchronous JavaScript and XML) A group of interrelated web development techniques used for creating.
It’s always better live. MSDN Events INTRODUCTION TO SILVERLIGHT prepared by Joe Nov INTRODUCTION TO SILVERLIGHT prepared by Joe Nov
Introduction to Silverlight. Slide 2 What is Silverlight? It’s part of a Microsoft Web platform called Rich Internet Applications (RIA) There is a service.
Intro to Silverlight Kevin Grossnicklaus. Introductions Kevin Grossnicklaus – SSE - ( ) Chief Architect Software.
Jamie Cool.NET Framework Team Microsoft Corporation Nick Kramer.NET Framework Team Microsoft Corporation
Silverlight Hitesh Trivedi Computer Science B.Tech A-Sec J.I.E.T.
Module 1: Overview of the Microsoft.NET Platform.
Building RIA for Desktop, Web and Mobile using Silverlight and WPF Giorgio Sardo UX Consultant, Microsoft UK blogs.msdn.com/Giorgio.
Silverlight 2 CoreCLR Andrew Pardoe Program Manager CLR Execution Engine
The Microsoft Technical Roadshow 2007 Rich Client Development in XAML Mark Johnston Developer & Platform Group Microsoft Ltd
Introducing Microsoft Rich Internet Applications Technologies Microsoft Belgium and Luxembourg
Grid Chemistry System Architecture Overview Akylbek Zhumabayev.
HDF and HDF-EOS Workshop VIII, October 26-28, /12 Peter Cao, National Center for Supercomputing Applications This work is supported in part by a.
Sascha P. Corti Microsoft
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.
Satisfy Your Technical Curiosity Building Rich, Highly Interactive Web Apps with WPF/E Jeff Prosise Cofounder, Wintellect
More exercises with C# Fateme Rajabi #W6. Add an image to your project Right click on your project name in solution explorer Add -> Existing item -> browse.
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
Contents : What is Silverlight? Silverlight Overview Silverlight Toolkit Overview Timeline & Packaging Silverlight V1.0 & V1.1 Properties of V1.0 Properties.
.NET Framework Presentation. About Me Patrik Löwendahl –C# MVP –Certified Vista Touchdown Trainer Cornerstone
Silverlight 101 Ahead! If you know Silverlight and are looking for more advanced content check out : ‘Microsoft Silverlight “Media” : Moving at 60fps’
Satisfy Your Technical Curiosity WPF/E Jeff Prosise Cofounder, Wintellect
Eben de Wit Developer Advisor Microsoft
NAMESPACE. Namespaces Namespaces are a way to define the classes and other types of information into one hierarchical structure. System is the basic namespace.
An Introduction to Developing Applications for Microsoft Silverlight Jaime Rodriguez
Microsoft’s Rich Web Technology XAML,WPF and WPF/E July, 2006 John Allwright.
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
Technologies For Creating Rich Internet Applications Presenter's name
Introduction to Silverlight Development Pavel Yosifovich CTO, Matrix Global; Senior Instructor, Hi-Tech College
Introduction to Silverlight
DotNetSpider Editor Hefin Dsouza
WPF vs Silverlight.
Introduction to Silverlight
Introduction to Silverlight
.NET and .NET Core 7. XAML Pan Wuming 2017.
Overview of Silverlight 2
.Net Framework Details Imran Rashid CTO at ManiWeber Technologies.
Building great libraries using .NET Standard
NAMESPACE.
Presentation transcript:

Introducing Silverlight 2

Agenda Silverlight architecture XAML CoreCLR The Silverlight Base Class Library Silverlight security Your first Silverlight application Mouse and keyboard handling

Silverlight Formerly known as "WPF/E" Microsoft's platform for rich, highly interactive Web experiences and RIAs –Cross-platform (browsers and OSes) Windows, Mac OS, Linux ("Moonlight") Internet Explorer, Firefox, Safari, and more –XAML-based rendering (subset of WPF XAML) Implemented as browser plug-in –Quick, easy install experience

Versions Silverlight 1.0 –Shipped September 2007 –XAML rendering and JavaScript API Silverlight 2 –Beta 2 currently available –XAML,.NET Framework, managed code, dynamic languages (e.g., IronRuby) –Ships in 2008

Silverlight Architecture

XAML <Canvas Width="300" Height="300" xmlns=" xmlns:x=" <Ellipse Canvas.Left="20" Canvas.Top="20" Height="200" Width="200" Stroke="Black" StrokeThickness="10" Fill="Yellow" /> <Ellipse Canvas.Left="80" Canvas.Top="80" Height="35" Width="25" Stroke="Black" Fill="Black" /> <Ellipse Canvas.Left="140" Canvas.Top="80" Height="35" Width="25" Stroke="Black" Fill="Black" /> <Path Data="M 70, 150 A 60, , 150" Stroke="Black" StrokeThickness="15" StrokeStartLineCap="Round" StrokeEndLineCap="Round" />

XAML DOM Canvas TextBlock Other Objects Web page Silverlight control XAML objects

Naming XAML Objects Use x:Name attributes to assign names to XAML objects (analogous to IDs in ASP.NET) <Rectangle Canvas.Left="50" Canvas.Top="50" Fill="Yellow" Width="300" Height="200" Stroke="Black" StrokeThickness="10" x:Name="YellowRect" /> Object can now be referred to as "YellowRect" in code

The Silverlight 2 CLR ("CoreCLR") Refactored version of full-size CLR –Same core type system, JIT compiler, etc. –COM interop, remoting, binary serialization, server GC, and other features removed –CAS replaced with transparency model –Multiple CLR instances per process supported –Most globalization support pushed down to OS –Dynamic Language Runtime (DLR) added Small footprint (< 2MB), cross-platform

The CoreCLR Diet Replace CAS Remove code pages etc. Remove COM interop Remove remoting Remove server GC 293K 217K 188K 111K 33K

Core Base Class Library System.Windows System.Windows.Controls System.Windows.Input System.Windows.Interop System.Windows.Media System.Windows.Shapes System.Windows.Threading System.Windows.Browser System System.Collections System.Collections.Generic System.Diagnostics System.Globalization System.IO System.IO.- IsolatedStorage System.Reflection System.Security System.Security.Cryptography System.Text System.Threading System System.Collections.Generic System.ComponentModel System.Diagnostics System.Text.RegularExpressions System.Linq System.Linq.Expressions System.Runtime.CompilerServices System.Security.Cryptography System.Xml System.XmlSchema System.Xml.Serialization

Extended Base Class Library

Silverlight 2 Security All code is "sandboxed" Sandboxing built on transparency model –Transparent: user code (untrusted) –Security-critical: platform code (can P/Invoke) –Security-safe-critical: platform code (entry points into security-critical code) For more information:

Transparency Model Application SecurityTransparent Silverlight SecuritySafeCritical SecurityCritical Operating System All user code is untrusted and can only call into other ST code or SSC SSC layer provides gateway to SC code SC layer P/Invokes into underlying OS

Your First Silverlight Application

Input Events XAML objects input fire events –Mouse events –Keyboard events Most input events "bubble up" XAML DOM –Also known as "event routing" –Use RoutedEventArgs.Handled controls routing –RoutedEventArgs.Source refers to originator Handlers can be registered declaratively or programmatically

Mouse Events private void OnMouseLeftButtonDown(Object sender, MouseButtonEventArgs e) { double x = e.GetPosition(null).X); // X-coordinate double y = e.GetPosition(null).Y); // Y-coordinate }

Keyboard Events private void OnKeyDown(Object Sender, KeyEventArgs e) { HtmlPage.Window.Alert(e.Key.ToString()); // Display key code }

Declarative Handler Registration <Rectangle Canvas.Left="50" Canvas.Top="50" Fill="Yellow" Width="300" Height="200" Stroke="Black" StrokeThickness="10" MouseLeftButtonDown="OnClick" /> private void OnClick(Object sender, MouseButtonEventArgs e) { ((Rectangle)sender).Fill = new SolidColorBrush(Colors.Red); }

Mouse Wheel Events Silverlight doesn't fire mouse wheel events Mouse wheel events can be handled directly from browser (even in managed code) –Use Silverlight browser integration features Handle DOM events in managed code –Requires manual handling of differences in ways browsers report mouse wheel events Great for mouse wheel zooms and other features

Processing Mouse Wheel Input HtmlPage.Window.AttachEvent("DOMMouseScroll", OnMouseWheelTurned); HtmlPage.Window.AttachEvent("onmousewheel", OnMouseWheelTurned); HtmlPage.Document.AttachEvent("onmousewheel", OnMouseWheelTurned);... private void OnMouseWheelTurned(Object sender, HtmlEventArgs args) { double delta = 0; ScriptObject e = args.EventObject; if (e.GetProperty("wheelDelta") != null) // IE and Opera { delta = ((double)e.GetProperty("wheelDelta")); if (HtmlPage.Window.GetProperty("opera") != null) delta = -delta; } else if (e.GetProperty("detail") != null) // Mozilla delta = -((double)e.GetProperty("detail")); // delta > 0 if wheel rolled forward, delta < 0 if wheel rolled backward if (delta != 0) { args.PreventDefault(); e.SetProperty("returnValue", false); }

Event Handling

Discussion