Microsoft Silverlight 2 packages a scaled-down .NET runtime engine and library into a cross-browser, cross-platform plugin. Create Rich Internet Applications (RIAs) using languages and libraries that you already know. Deliver online business applications, multimedia websites, and games to Windows, Mac OS, and Linux clients.You'll get answers to these questions:
How does Silverlight compare to Flash, AJAX, and WPF?
How do I use graphics, animations and media to build compelling user interfaces?
How can I utilize background threads to make my UI more responsive?
How do I integrate data into my application to create a dynamic user interface with minimal code?
How can I use local files and external web services to store and retrieve data?
How do I use styles and templates to customize the appearance of my application?
How can I build custom controls for use in Silverlight?
Learn to build Rich Internet Applications with Microsoft Silverlight.
Day 1 Introduction In this first module, you will gain a high-level understanding of Silverlight: its positioning, capabilities, and development tools. You will also see how Silverlight compares to other rich web-enabling technologies such as AJAX and Flash/Flex.
Application Structure Next, you dive into the architecture of a Silverlight application. You will see how to create a basic Silverlight program and how that application is deployed and rendered within the browser. You will also benefit from an introduction to Extensible Application Markup Language (XAML), the bedrock language for creating Silverlight user interfaces.
Built-in Controls Here you survey how to use the built-in Silverlight controls. Youll see which controls are available, how to subscribe to their events, and how to design simple user interfaces by arranging controls inside a panel.
Day 2 HTML Integration Very few Silverlight applications are completely isolated from their containing site. Therefore, in this module you will learn how to support interoperability with existing HTML elements so that you can combine Silverlight, AJAX and standard HTML programming to create a uniform and integrated experience for the user.
Graphics Whether youre trying to create an interactive graph, or just create a new template for a button, understanding Silverlights graphics support is vitally important to any developer. Silverlight has a rich 2-D vector graphics engine, and in this section you will examine the available shapes and see how to customize their appearance, learning about the different brushes and pens that you can use to create interesting graphical effects.
Mouse Interaction The mouse is the primary interaction device that drives the Web, and the same applies to Silverlight applications. Unfortunately, support for the mouse is fairly rudimentary; with no built-in drag n drop support and limited access to the right button. In this session you will therefore learn how to make the most out of the mouse (and stylus), and see how you can actually provide drag n drop and other fun mouse-driven features in your application.
Layout A Silverlight UI is built from controls arranged inside a Grid or StackPanel or positioned on a Canvas. Here you will see the core capabilities of each panel and look at how to nest multiple panels to create a resizable UI.
Day 3 Keyboard Interaction How hard can it be to handle the keyboard? Well, Silverlights keyboard handling is far less capable than that of WPF; it has to cope with multiple browsers running on multiple operating systems and it has a huge constraint: the keyboard doesnt work when Silverlight is in fullscreen mode. In this session you will learn all the nuances of Silverlights keyboard support, including how to make it really work when writing casual games.
Animations Smooth, carefully designed animations improve the usability of applications. Silverlight is loaded with animation types and comes with great tool support from Expression Blend, and in this session you will learn how to create animations both declaratively and from code.
Data Binding All good UI technologies support declarative data binding, and Silverlight is no exception. In this module you will learn how to bind data to UI elements; how to implement the key interfaces that enable the UI to be updated automatically, such as INotifyPropertyChanged, and how to fully utilize the flexibility afforded by value converters.
Custom Controls Set free from the constraints of Windows, Web applications tend to exploit graphical richness and brand compatibility. In this module you will learn how to create reusable controls that work well in Silverlight, and which support features such as templates and styling.
Day 4 Interacting with External Resources RIAs naturally become richer and more dynamic when they communicate with external data sources. Therefore, in this session, youll use the many network stacks to pull resources from your and other servers, gaining a deep understanding of the limitations of and support for cross-domain calls. You will examine options for utilizing machine resources, such as Isolated Storage, to improve performance by caching data on the client and for storing user settings. You will also look at how Silverlight protects the users machine by running your application inside a sandbox, and how this security system impacts what you can and cannot do.
Asynchronous Execution User interfaces that rely on a single thread of execution are often slow and clunky. The popularity of Ajax shows that traditional Web developers understand the importance of the asynchronous updates to their pages. Silverlight has rich support for writing asynchronous code, but its not all plain and simple. In this session you will learn exactly what you can and cannot do with threads; how to synchronize their operations; and how to exploit wrappers such as the BackgroundWorker component to make asynchronous operations easier.
Media Playback Silverlight excels at supporting rich media. In this module, you will learn how to leverage Silverlights built in video capabilities to control and display A/V content within your application. We will cover playback basics, fullscreen mode, and video brushes. You will also see a few of the hosting and media streaming capabilities provided by Windows Live Services.
Media Encoding Here you will use Microsoft Expression Encoder to create and transform A/V content to fit the limitations of the Web. You will add markers to your video during encoding and then write C# code to react when the markers are reached during playback: a technique that allows you to coordinate targeted overlay or banner ads to really maximize the value of your media content.
VERSION 2.0.30923 is the minimum runtime version needed for this course
VERSION 2.0.40115 of the runtime is preferred, but not required
INSTRUCTOR MACHINES
Same as Student except add "Microsoft Office 2007" to Software Requirements
Remote Access Available
Essential Silverlight 2 is now available as a remote access course.
You can now take open enrollment courses in our Los Angeles and Boston facilities without traveling. Remote Access to our ongoing schedule of instructor-led courses will allow you to fully participate real-time in expert-level lectures, demos and labs that have made DevelopMentor a leader in software development training. We've added new collaboration tools and prepared our instructors for remote students in class so you will be fully engaged in the learning process.
Mentoring
Quickly assimilate what you learn in Essential Silverlight 2 and apply it to your project by taking advantage of our Mentoring services.
Our dedicated mentors facilitate your team's development. We add value to your business by enhancing the talent of your employees and maximizing their productivity. Mentors integrate the methodologies, technologies and practical experiences of the classroom through an on-the-job and on-the-project experience that produces real-world results.
Onsite
Essential Silverlight 2 is also available as an onsite course.
If you have a group of people to train, an on-site course, delivered at your facility may be the most cost-effective solution for you. Our staff will work with your team to plan and produce the best possible result based on your team's size, experience levels, project needs and longer-term goals. We can structure a training course, or broader program, tailored to meet the specific needs of your organization. We'll make sure that any lab exercises run on the platform you use and we can tailor the lab exercises to be appropriate to your business. If you prefer to focus on just the pure technological principles, we can also deliver courses at your facility following the same format as our public curriculum.