General How-to Microsoft

Silverlight Deployment Guide v4 is available for Download

Early last week the new version of the Silverlight Deployment Guide went live and can be found on the Silverlight Resources page.

This guide is great for any enterprise who wants to deploy, manage, or troubleshoot the installation of Silverlight version 1-4 in their corporation.  The previous version 2 of the guide has more than 100,000 completed downloads to date.

Silverlight LogoThe major new additions since the previous versions of the guide are:

  • Deploying and managing Silverlight out of browser (OOB) applications
  • Links to the Updated Group policies and template (ADMX/L files) which includes new capabilities to lockdown:
    • Silverlight Trusted Applications — allows users to install out-of-browser applications via the Install dialog
    • WebCam and Microphone — allows webpages/applications to access the microphone and webcam
    • UDP Multicast Networking — allows webpages/applications to do UDP multicast networking
    • Updated the verbiage to include Silverlight 4 and new system requirements

You will also be interested in reading this –

How-to Microsoft

Free Silverlight 4 Programming and Training Kit Available for Download

Microsoft has just released a new free Silverlight 4 Training Kit that walks you through building business applications with Silverlight 4. 

Silverlight LogoYou can use the 8 modules, 25 videos, and several hands on labs online or offline from links on the Channel 9 site. I’ve included a breakdown and links to all of the content here in this post. The key to this training material is not the features it covers (though it covers a variety them) but rather that it teaches from the perspective of building a business application.

You can also download the entire offline version of the kit here

Module 1 – Introduction

John Papa and Ian Griffiths discuss the key areas that the Building Business Applications with Silverlight 4 course focuses on. This module is the overview of the course which covers many key scenarios that are faced when building business applications and how Silverlight can help address them. Click here to video Module 1

Module 2 – WCF RIA Services

In this lab, you will create a web site for managing conferences that will be the basis for the other labs in this course. (Don’t worry if you don’t manage to complete a particular lab. These lab manual instructions are accompanied by completed solutions, so you can either build your own solution from start to finish, or dive straight in at any point using the solutions provided as a starting point.) You will learn how to set up WCF RIA Services, create bindings to the domain context, filter using the domain data source, and create domain service queries.

Module 2.1 – WCF RIA Services 

Ian Griffiths sets up the Entity Framework and WCF RIA Services for the sample Event Manager application for the course. He covers how to set up the services, how the Domain Services work and the role that the DomainContext plays in the sample application. He also reviews the metadata classes and integrating the navigation framework.

Module 2.2 – Using WCF RIA Services to Edit Entities

Ian Griffiths discusses how he adds the ability to edit and create individual entities with the features built into WCF RIA Services into the sample Event Manager application. He covers data binding fundamentals, IQueryable, LINQ, the DomainDataSource, navigation to a single entity using the navigation framework, and how to use the Visual Studio designer to do much of the work .

Module 2.3 – Showing Master/Details Records Using WCF RIA Services

Ian Griffiths reviews how to display master/detail records for the sample Event Manager application using WCF RIA Services. He covers how to use the Include attribute to indicate which elements to serialize back to the client. Ian also demonstrates how to use the Data Sources window in the designer to add and bind controls to specific data elements. He wraps up by showing how to create custom services to the Domain Services.

Module 3 – Authentication, Validation, MVVM, Commands, Implicit Styles and RichTextBox

This lab demonstrates how to build a login screen, integrate ASP.NET authentication, and perform validation on data elements. Model-View-ViewModel (MVVM) is introduced and used in this lab as a pattern to help separate the UI and business logic. You will also learn how to use implicit styling and the new RichTextBox control.

Module 3.1 – Authentication

Ian Griffiths covers how to integrate a login screen and authentication into the sample Event Manager application. Ian shows how to use the ASP.NET authentication and integrate it into WCF RIA Services and the Silverlight presentation layer.

Module 3.2 – MVVM

Ian Griffiths covers how to Model-View-ViewModel (MVVM) patterns into the sample Event Manager application. He discusses why MVVM exists, what separated presentation means, and why it is important. He shows how to connect the View to the ViewModel, why data binding is important in this symbiosis, and how everything fits together in the overall application.

Module 3.3 –Validation

Ian Griffiths discusses how validation of user input can be integrated into the sample Event Manager application. He demonstrates how to use the DataAnnotations, the INotifyDataErrorInfo interface, binding markup extensions, and WCF RIA Services in concert to achieve great validation in the sample application. He discusses how this technique allows for property level validation, entity level validation, and asynchronous server side validation.

Module 3.4 – Implicit Styles

Ian Griffiths discusses how why implicit styles are important and how they can be integrated into the sample Event Manager application. He shows how implicit styles defined in a resource dictionary can be applied to all elements of a particular kind throughout the application.

Module 3.5 – RichTextBox

Ian Griffiths discusses how the new RichTextBox control and it can be integrated into the sample Event Manager application. He demonstrates how the RichTextBox can provide editing for the event information and how it can display the rich text for selection and copying.

Module 4 – User Profiles, Drop Targets, Webcam and Clipboard

This lab builds new features into the sample application to take the user’s photo. It teaches you how to use the webcam to capture an image, use Silverlight as a drop target, and take advantage of programmatic access to the clipboard.

Module 4.1 – Webcam

Ian Griffiths demonstrates how the webcam adds value to the sample Event Manager application by capturing an image of the attendee. He discusses the VideoCaptureDevice, the CaptureDviceConfiguration, and the CaptureSource classes and how they allow audio and video to be captured so you can grab an image from the capture device and save it.

Module 4.2 – Drag and Drop in Silverlight 

Ian Griffiths demonstrates how to capture and handle the Drop in the sample Event Manager application so the user can drag a photo from a file and drop it into the application. Ian reviews the AllowDrop property, the Drop event, how to access the file that can be dropped, and the other drag related events. He also reviews how to make this work across browsers and the challenges for this.

Module 5 – Schedule Planner and Right Mouse Click

This lab builds on the application to allow grouping in the DataGrid and implement right mouse click features to add context menu support. 

Module 5.1 – Grouping and Binding 

Ian Griffiths demonstrates how to use the grouping features for data binding in the DataGrid and how it applies to the sample Event Manager application. He reviews the role of the CollectionViewSource in grouping, customizing the templates for headers, and how to work with grouping with ItemsControls.

Module 5.2 – Layout Visual States

Ian Griffiths demonstrates how to use the Fluid UI animation support for visual states in the ListBox control DataGrid and how it applies to the sample Event Manager application. He reviews the 3 visual states of BeforeLoaded, AfterLoaded, and BeforeUnloaded.

Module 5.3 – Right Mouse Click

Ian Griffiths demonstrates how to add support for handling the right mouse button click event to display a context menu for the Event Manager application. He demonstrates how to handle the event, show a custom context menu control, and integrate it into the scheduling portion of the application.

Module 6 – Printing the Schedule

This lab teaches how to use the new printing features in Silverlight 4. The lab walks through the PrintDocument class and the ViewBox control, while showing how to print multiple pages of content using them. 

Module 6.1 – Printing and the Viewbox

Ian Griffiths demonstrates how to add the ability to print the schedule to the sample Event Manager application. He walks through the importance of the PrintDocument class and its members. He also shows how to handle printing the visual tree and how the ViewBox control can help.

Module 6.2 – Multi Page Printing

Ian Griffiths expands on his printing discussion by showing how to handle printing multiple pages of content for the sample Event Manager application. He shows how to paginate the content and points out various tips to keep in mind when determining the printable area.

Module 7 – Running the Event Dashboard Out of Browser

This lab builds a dashboard for the sample application while explaining the fundamentals of the out of browser features, how to handle authentication, displaying notifications (toasts), and how to use native integration to use COM Interop with Silverlight. 

Module 7.1 – Out of Browser

Ian Griffiths discusses the role of an Out of Browser application for administrators to manage the events and users in the sample Event Manager application. He discusses several reasons why out of browser applications may better suit your needs including custom chrome, toasts, window placement, cross domain access, and file access. He demonstrates the basic technique to take your application and make it work out of browser using the tools.

Module 7.2 – NotificationWindow (Toasts) for Elevated Trust Out of Browser Applications

Ian Griffiths discusses the how toasts can be used in the sample Event Manager application to show information that may require the user’s attention. Ian covers how to create a toast using the NotificationWindow, security implications, and how to make the toast appear as needed.

Module 7.3 – Out of Browser Window Placement

Ian Griffiths discusses the how to manage the window positioning when building an out of browser application, handling the windows state, and controlling and handling activation of the window.

Module 7.4 – Out of Browser Elevated Trust Application Overview

Ian Griffiths discusses the implications of creating trusted out of browser application for the Event Manager sample application. He reviews why you might want to use elevated trust, what features is opens to you, and how to take advantage of them. Topics Ian covers include the dynamic keyword in C# 4, the AutomationFactory class, the API to check if you are in a trusted application, and communicating with Excel.

Module 8 – Advanced Out of Browser and MEF

This hands-on lab walks through the creation of a trusted out of browser application and the new functionality that comes with that. You will learn to use COM Automation, handle the window closing event, set custom window chrome, digitally sign your Silverlight out of browser trusted application, create a silent install option, and take advantage of MEF. 

Module 8.1 – Custom Window Chrome for Elevated Trust Out of Browser Applications

Ian Griffiths discusses how to replace the standard operating system window chrome with customized chrome for an elevated trusted out of browser application. He covers how it is important to handle close, resize, minimize, and maximize events. Ian mentions that the tooling was not ready when he shot this video, but the good news is that the tooling now supports setting the custom chrome directly from the property page for the Silverlight application.

Module 8.2 – Window Closing Event for Out of Browser Applications

Ian Griffiths discusses the WindowClosing event and how to handle and optionally cancel the event.

Module 8.3 – Silent Install of Out of Browser Applications

Ian Griffiths discusses how to use the SLLauncher executable to install an out of browser application. He discusses the optional command lien switches that can be set including how the emulate switch can help you emulate the install process. Ian also shows how to setup a shortcut for the application and tell the application where it should look for future updates online.

Module 8.4 – Digitally Signing Out of Browser Application

Ian Griffiths discusses how and why to digitally sign an out of browser application using the signtool program. He covers what trusted certificates are, the implications of signing (or not signing), and the effect on the user experience.

Module 8.5 – The Value of MEF with Silverlight

Ian Griffiths discusses what MEF is, how your application can benefit from it, and the fundamental features it puts at your disposal. He covers the 3 step import, export and compose process as well as how to dynamically import XAP files using MEF.

Also Read –

  1. .toolbox: Silverlight & Expression Studio online learning program
  2. Steps to Install the Silverlight Client for Facebook
  3. Documentation and Softwares – Developing for Windows Phone 7 Series using Silverlight
  4. Facing Problem viewing Silverlight Content on Linux?

Courtesy: Abhishek Kant

General Microsoft

.toolbox: Silverlight & Expression Studio online learning program

.toolbox is a free online training program where designers and developers can learn to create Silverlight applications using Expression Studio and to apply basic UX concepts to their solutions.

Toolbox Website
.toolbox provides you with the ability to send designers, developers, partners, customers, and students to a fun integrated environment that takes an individual from a level 100 to 400 understanding of using the design aspects of Silverlight and Expression.

Toolbox Class.toolbox is a structured curriculum-based program that features two core learning tracks with materials that increase in difficulty to build individuals’ knowledge and understanding. In Design Scenarios, designers and developers learn to create dynamically-rich Silverlight applications using Expression Studio. They learn to add code-free functionality to designs by following step-by-step tutorials that illustrate how to create interactive user experiences. In Design Principles, designers and developers learn fundamental UX concepts (e.g., choosing the right colors) along with tips in how to apply them. Badges are earned and accumulated in both tracks upon successful completion of the evaluation found at the end of each level.

Calls To Action –

  • Go to .toolbox and sign up using your Windows Live ID
  • Visit the School section and explore the curriculum.
  • Select a module, watch the videos, and follow along using the provided guide and assets.
  • Take the evaluation for a completed level to achieve a badge.
  • Broadcast your achievements by posting to Twitter and Facebook.

Helpful Links

Community Activities General Microsoft

Zeollar – The All new Technology TV Channel on your browser!

Zeollar - The All new Technology TV Channel on your browser!Zeollar is a Microsoft India DPE initiative that gets you the latest technical content on a daily basis in different channels. Think of it like a personal television that switches on every day at a specified hour allowing you to switch channels and view the channel of your interest.

Just to give a snapshot on the technologies used for this project – Windows Azure, SQL Azure, CDN technologies for on-demand videos, Support for smooth streaming for on-demand videos, Windows Media encoder, Social networking integration with FB and Twitter, ASP.NET MVC, JQuery among others. Designed using Expression suite and developed in c# and Java script.

You can access the zeollar here –

Zeollar provides you smooth streaming of videos, which means, as your internet bandwidth goes high, the video quality gets much better and better! I could test that, and was able to make out a visible difference!

Ram (head, DPE-India) says,

This technology evangelism platform is conceived and built by our team to try out various ways to reach out to technical audience. Please take a look at what pandu/supreet (dev/designer combo of this project) have to say on this project. (Watch this video on Introduction to Zeollar!)

BTW, this project is all cloud based. We don’t talk cloud; we do cloud., and Zeollar stands for Zero Dollar – that’s how much we spent for this project and planning to spend for its sustenance (almost)!

General How-to Microsoft Tools

Steps to Install the Silverlight Client for Facebook

Facebook LogoThis application brings together the many compelling platform capabilities of Silverlight 4 into a rich out-of-browser application in the familiar context of Facebook. In order to install Silverlight Client for Facebook, you will need to install the Silverlight 4 beta first.

To install the Silverlight 4 beta for Developers, Select the appropriate Operating System below,

Windows Runtime or Mac Runtime
If you installed the tools above, you will get the developer runtime and there is no need to install again. These downloads are being made available for test machines for the Windows and Mac platforms for your applications.

Once the installation is complete, Click here to install the Silverlight Client for Facebook. You will see the below dialog,

Silverlight Client for Facebook Install Instructions

Once you agree the license agreement and click on install, The installation progress bar will reach its 100% and then show the below dialog. This defines the entry point (shortcuts) for the application. You can choose Desktop Shortcut, if you need.

Once the installation completes and you launch the application shortcut, you will need to authorize this Client to fetch your Facebook feeds and images. You can enter your credentials and authorize.

Authorizing the Facebook client to recieve your News feeds

Once the Authorization is done, the home screen of the Facebook client Appears. You will see the Silverlight Ui richness. This is a typical Silverlight app, which gives this client an Out of Browser Xperience.

Silverlight 4 Client for Facebook

Updating the status is real simple, just click on the “Whats on your mind”, you will see the below dialog

Silverlight Client for Facebook - whats on your mind?

The photo album looks more attractive, and it immediate pulls out a collage of pics. You can choose one and view it as well.


When you select Events tab, now you have an option to sort the events upon dates, sort by month, and even the past events. I loved the calender view in this client. Also when you click on the People/Friends tab, it now gives you a alphabetical order of all your friends. You can select a friend, and his feed will appear on the right side. This is one of the Sooper Cool feature of this client.

Events Page - Silverlight Client for Facebook Friends - Silverlight Client for Facebook

The last funntasstic feature is the inbox., The messages in this client looks quite similar to that of an email chain. More good, the live feeds of the other person who had messaged you, appears in the right side. This is an amazing feature.

Facebook Siliverlight Client - Message Inbox

Silverlight Client for Facebook is a Silverlight 4 developer preview application. When Silverlight 4 is finally released you may be required to uninstall and re-install the plugin!

Enjoy the photos, feeds, events, friends’ walls, and inbox mail from your Facebook account in an appealing and user-friendly environment!

General Microsoft

Facing Problem viewing Silverlight Content on Linux?

Microsoft Team announced the availability of Moonlight 2, an open source Linux implementation of Silverlight first announced by Microsoft and Novell in September of 2007.  Moonlight is the first and only open source project that provides Linux users access to Silverlight content.

Microsoft has provided Novell with access to its test suites for Silverlight, and provides Linux end users of Moonlight with free access to the Microsoft Media Pack, a set of licensed media codecs for video and audio.

In addition, Microsoft and Novell are also announcing the expansion of their collaboration on Moonlight to include support for Moonlight implementations of Silverlight 3 and Silverlight 4.

As part of the companies’ interoperability agreement, Microsoft will deliver new test suites and specifications for Silverlight 3 and 4 to Novell.

To download or learn more about Moonlight, visit

Moonlight 2 is compatible with Microsoft Silverlight 2 and includes some features of Silverlight 3, including support for Bitmap APIs, file dialogs, easing functions, pluggable media pipeline and custom Codecs. Moonlight 2 offers better streaming of multimedia content based on the quality of the user’s connections. In addition, this release embeds Mono runtime functionality, which allows developers to target Linux with rich Internet applications using a wide variety of programming languages, including C#, Ruby, Python and Javascript.

Moonlight development is quickly following the innovation in Silverlight with each release. A preview release of Moonlight 3 will be made available in the first quarter of 2010 with a final release scheduled for the third quarter of 2010. Moonlight 4 will follow shortly thereafter.

In response to feedback from the community, Microsoft has also extended its Patent Covenant to End Users of Moonlight. The covenant is no longer limited to users that obtain Moonlight from Novell or its channel, but now covers users who obtain Moonlight from any third party, including other Linux distributors. Media Codecs for MP3 and VC1, and in the future H.264 and AAC, are supported through the Microsoft Media Pack, a Microsoft-delivered set of media codes that offer optimized and licensed decodecs to every Linux user who obtains Moonlight from Novell.

To download or learn more about Moonlight, visit