• Published:
    21 January 2011
  • Languages:
    English, French, German, Japanese, Portuguese (Brazil), Chinese (Simplified)
  • Audiences:
  • Technology:
  • Credit towards certification:

TS: Silverlight 4, Development

This exam has been withdrawn

For currently available options, please see the Microsoft Certification exam list.

Skills measured

This exam measures your ability to accomplish the technical tasks listed below. The percentages indicate the relative weight of each major topic area in the exam. The higher the percentage, the more questions you are likely to see on that content area in the exam. View video tutorials about the variety of question types on Microsoft exams.

Please note that the questions may test on, but will not be limited to, the topics described in the bulleted text.

Do you have feedback about the relevance of the skills measured on this exam? Please send Microsoft your comments. All feedback will be reviewed and incorporated as appropriate while still maintaining the validity and reliability of the certification process. Note that Microsoft will not respond directly to your feedback. We appreciate your input in ensuring the quality of the Microsoft Certification Program.

If you have concerns about specific questions on this exam, please submit an exam challenge.

Lay out a user interface (15%)
  • Arrange content with panels
    • Arrange content with panels (grid, stack panels, canvas, border, scroll viewer, ViewBox), manage grid properties (auto sizing, star sizing, column definitions, row definitions, gridlines), set Z order, set visibility, set orientation, set positioning
  • Implement and configure core controls
    • Implement and configure core controls (text box, button, text block, tick box) and content controls, reference namespaces
  • Create user controls
    • Create user controls, create control parts, map control parts
  • Implement a navigation framework
    • Implement caching on a frame, modify journal mode, handle navigation events (Navigating, Navigated, NavigationFailed, NavigationStopped), implement and configure deep linking
  • Display collections of items
    • Implement and configure item controls (data grid, list box, items control, combo box, tree view), work with selected items and indices
  • Play media files
    • Implement digital rights management (DRM), play streams, create timeline markers, play multiple audio tracks, display closed captioning, respond to timeline marker events, handle media playback events

Preparation resources

Enhance the user interface (14%)
  • Create or modify control styles
    • Set a style locally, set a style at the page control level, set a style globally, implement implicit styles, override styles at different levels, create based-on styles
  • Create control templates
    • Create a template, attach a template, implement a content placeholder, implement template binding
  • Create or modify data templates
    • Modify item templates for data controls, create a create template, create an update template, use a user control as a data template
  • Manipulate visuals
    • Transform controls by using skew transformations, rotate transformations, scale transformations, translate transformations, or perspective transformations; apply pixel shaders
  • Animate visuals
    • Create storyboards, programmatically start and stop storyboards, implement easing functions, use keyframes, trigger storyboard on load, repeat and reverse storyboards, set keyframe begin time, respond to events, configure bitmap caching
  • Implement behaviours
    • Trigger storyboards by using behaviours, drag and drop elements, call a method
  • Manage the visual state
    • Create states, create state groups, transition states, programmatically change states

Preparation resources

Implement application logic (16%)
  • Handle events
    • Handle routed events, bubble events, implement AddHandler
  • Consume services asynchronously
    • Create and add service references, handle asynchronous completed events, configure service endpoints, handle service exceptions, handle time-outs
  • Work with background threads
    • Spawn a background thread to execute code, return data to the UI thread by using the dispatcher object, implement the dispatcher timer
  • Work with dependency properties
    • Create dependency properties, specify dependency property metadata, get and set dependency property values
  • Interact with attached properties
    • Set attached properties in XAML, get and set attached properties programmatically
  • Implement ICommand
    • Execute an ICommand, implement an ICommand, bind to an ICommand, pass a parameter

Preparation resources

Work with data (17%)
  • Format data
    • Format string values in data binding, format culture-specific string values
  • Implement data binding
    • Set the data context, bind data sets to controls, bind elements to other elements, implement INotifyPropertyChanged, implement ObservableCollection, set binding modes, set a fallback value
  • Create and consume value converters
    • Create a value converter, reference a value converter, pass parameters
  • Implement data validation
    • Implement the INotifyDataErrorInfo interface, implement the IDataErrorInfo interface, implement data binding errors (NotifyOnValidationError, ValidatesOnExceptions, ValidatesOnDataErrors, ValidatesOnNotifyDataErrors)

Preparation resources

Interact with a host platform (11%)
  • Implement the printing API
    • Handle multiple pages, add page numbers, print off-screen visuals
  • Create out-of-browser applications
    • Enable trusted applications, check for network connectivity, install and uninstall applications, display toast notifications, check and update application versions, set the application to be chromeless, display HTML content by using the web browser control, sign the XAP file, work with COM Interop
  • Access isolated storage
    • Read from and write to isolated storage, increase storage size
  • Interact with the HTML DOM
    • Access cookies, querystring values and header info; call into JavaScript from Silverlight; call into Silverlight from JavaScript; Silverlight-to-Silverlight communication; manipulate the DOM
  • Access the clipboard
    • Copy and paste text, handle situations when the user declines
  • Read from and write to the host file system
    • Read from and write to various locations, drag and drop from the file system, use IO dialogues
  • Handle alternative input methods
    • Handle right-click, mouse wheel and multi-touch events

Preparation resources

Structure applications (13%)
  • Create and consume resource dictionaries
    • Utilise sample data, select resources, merge resource dictionaries
  • Implement localisation and globalisation
    • Translate strings, configure right-to-left language support and FlowDirection
  • Handle application-level events
    • Handle Exit, Startup and UnhandledException events

Preparation resources

Deploy applications (13%)
  • Configure the Silverlight plug-in
    • Pass initialisation parameters; configure windowless mode, background colour, and sizing of plug-ins; incorporate non-standard splash screens, enable GPU acceleration, set the frame rate
  • Dynamically load application resource
    • Download a zip file, extract content from a zip file, enable assembly caching
  • Create a client access policy
    • Access cross-domain content, access communication channels, limit access to resources

Preparation resources

Who should take this exam?

Candidates for this exam are developers who create and maintain rich interactive applications (RIA) using Silverlight 4. Candidates may have additional experience with previous Silverlight versions.

More information about exams

Preparing for an exam

We recommend that you review this exam preparation guide in its entirety and familiarise yourself with the resources on this website before you schedule your exam. See the Microsoft Certification exam overview for information about registration, videos of typical exam question formats and other preparation resources. For information on exam policies and scoring, see the Microsoft Certification exam policies and FAQs.


This preparation guide is subject to change at any time without prior notice and at the sole discretion of Microsoft. Microsoft exams might include adaptive testing technology and simulation items. Microsoft does not identify the format in which exams are presented. Please use this preparation guide to prepare for the exam, regardless of its format. To help you prepare for this exam, Microsoft recommends that you have hands-on experience with the product and that you use the specified training resources. These training resources do not necessarily cover all of the topics listed in the "Skills measured" section.