Exam 70-506 - TS: Silverlight 4, Development
Overview
Language(s): | English, French, German, Japanese, Portuguese (Brazil), Chinese (Simplified) |
Audiences(s): | Developers |
Technology: | Silverlight |
Type: | Proctored Exam |
Exam Topics Covered
Exam 70-506 is intended for software developers who are creating rich Internet-based applications using Silverlight. The exam focuses mainly on Silverlight 4, but also covers core Silverlight concepts.
Audience Profile
Candidates for this exam are developers who create and maintain rich interactive applictions (RIA) using Silverlight 4. Candidates may have additional experience with previous Silverlight versions.
The minimally qualified candidate typically:
- Has at least six months of experience with Silverlight development
- Has at least one year of experience with Microsoft .NET development
- Has experience consuming data services
Credit Toward Certification
When you pass Exam 70-506: TS: Silverlight 4, Development, you complete the requirements for the following certification(s):
- MCTS: Silverlight 4, Development
Exam 70-506: TS: Silverlight 4, Development counts as credit toward the following certification(s):
Note This preparation guide is subject to change at any time without prior notice and at the sole discreation 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 to prepare for the exam, regardless of its format.
Skills Measured
Laying Out a User Interface (15%)
Arrange content with panels.
This objective may include but is not limited to: arranging content with panels (grid, stack panels, canvas, border, scroll viewer, ViewBox), managing grid properties (autosizing, star sizing, column definitions, row definitions, gridlines), setting Z order, setting visibility, setting orientation, setting positioning
Implement and configure core controls.
This objective may include but is not limited to: implementing and configuring core controls (textbox, button, text block, checkbox) and content controls, referencing namespaces
Create user controls.
This objective may include but is not limited to: creating user controls, creating control parts, mapping control parts
Implement a navigation framework.
This objective may include but is not limited to: implementing caching on a frame, modifying journal mode, handling navigation events (Navigating, Navigated, NavigationFailed, NavigationStopped), implementing and configuring deep linking
Display collections of items.
This objective may include but is not limited to: implementing and configuring item controls (datagrid, listbox, items control, combo box, tree view), working with selected items and indices
Play media files.
This objective may include but is not limited to: implementing digital rights management (DRM), playing streams, creating timeline markers, playing multiple audio tracks, displaying closed captioning, responding to timeline marker events, handling media playback events
Enhancing the User Interface (14%)
Create or modify control styles.
This objective may include but is not limited to: setting a style locally, setting a style at the page control level, setting a style globally, implementing implicit styles, overriding styles at different levels, creating based-on styles
Create control templates.
This objective may include but is not limited to: creating a template, attaching a template, implementing a content placeholder, implement data binding
Create or modify data templates.
This objective may include but is not limited to: modifying item templates for data controls, creating a create template, creating an update template, using a user control as a data template
Manipulate visuals.
This objective may include but is not limited to: transforming controls by using skew transformations, rotate transformations, scale transformation, translate transformations, or perspective transformations; applying pixel shaders
Animate visuals.
This objective may include but is not limited to: creating storyboards, programmatically starting and stopping storyboards, implementing easing functions, using keyframes, triggering storyboard on load, repeating and reversing storyboards, setting keyframe begin time, responding to events, configuring bitmap caching
Implement behaviors.
This objective may include but is not limited to: triggering storyboards by using behaviors, dragging and dropping elements, calling a method
Manage the visual state.
This objective may include but is not limited to: creating states, creating state groups, transitioning states, programmatically changing states
Implementing Application Logic (16%)
Handle events.
This objective may include but is not limited to: handling routed events, bubbling events, implementing AddHandler.
Consume services asynchronously.
This objective may include but is not limited to: creating and adding service references, handling asynchronous completed events, configuring service endpoints, handling service exceptions, handling timeouts
Work with background threads.
This objective may include but is not limited to: spawning a background thread to execute code, returning data to the UI thread by using the dispatcher object, implementing the dispatcher time
Work with dependency properties.
This objective may include but is not limited to: creating dependency properties, specifying dependency property metadata, getting and setting dependency property values
Interact with attached properties.
This objective may include but is not limited to: setting attached properties in XAML, getting and setting attached properties programmatically
Implement ICommand
This objective may include but is not limited to: executing an ICommand, implementing an ICommand, binding to an ICommand, passing a parameter
Working with Data (17%)
Format data.
This objective may include but is not limited to: formatting string values in data binding, formatting culture-specific string values
Implement data binding.
This objective may include but is not limited to: setting the data context, binding data sets to controls, binding elements to other elements, implementing INotifyPropertyChanged, implementing ObservableCollection, setting binding modes, setting a fallback value
Create and consume value converters.
This objective may include but is not limited to: creating a value converter, referencing a value converter, passing parameters
Implement data validation.
This objective may include but is not limited to: implementing the INotifyDataErrorInfo interface, implementing the IDataErrorInfo interface, implementing data binding errors (NotifyOnValidationError, ValidatesOnExceptions, ValidatesOnDataErrors, ValidatesOnNotifyDataErrors)
Interacting with a Host Platform (11%)
Implementing the printing API.
This objective may include but is not limited to: handling multiple pages, adding page numbers, printing off-screen visuals
Create out-of-browser applications.
This objective may include but is not limited to: enabling trusted applications, checking for network connectivity, installing and uninstalling applications, displaying toast notifications, checking and updating application versions, setting the application to be chromeless, displaying HTML content by using the web browser control, signing the XAP file, working with COM Interop
Access isolated storage.
This objective may include but is not limited to: reading from and writing to isolated storage, increasing storage size
Interact with the HTML DOM.
This objective may include but is not limited to: accessing cookies, querystring values, and header info; calling into JavaScript from Silverlight; calling into Silverlight from JavaScript; Silverlight-to-Silverlight communication; manipulating the DOM
Access the clipboard
This objective may include but is not limited to:copying and pasting text, handling situations when the user declines
Read from and write to the host file system.
This objective may include but is not limited to: read from and write to various locations, drag and drop from the file system, using IO dialogs
Handle alternative input methods.
This objective may include but is not limited to: handling right-click, mouse wheel, and multi-touch events
Structuring Applications (13%)
Create and consume resource dictionaries.
This objective may include but is not limited to: utilizing sample data, selecting resources, merging resource dictionaries
Implement localization and globalization.
This objective may include but is not limited to: translating strings, configuring right-to-lef language support and FlowDirection
Handle application-level events.
This objective may include but is not limited to: handling Exit, Startup, and UnhandledException events
Deploying Applications (13%)
Configure the Silverlight plug-in.
This objective may include but is not limited to: passing initialization parameters; configuring windowless mode, background color, and sizing of plugins; incorporating nonstandard splash screens, enabling GPU acceleration, setting the frame rate
Dynamically load application resources.
This objective may include but is not limited to: downloading a zip file, extracting content from a zip file, enabling assembly caching
Create a client access policy.
This objective may include but is not limited to: accessing cross-domain content, accessing communication channels, limiting access to resources
Preparation Materials
Learning Plans and Classroom Training
- 10553A: Fundamentals of XAML and Microsoft Expression Blend (3 Days)
- 10554A: Developing Rich Internet Applications Using Microsoft Silverlight 4 (5 Days)
- 10553AD: Fundamentals of XAML and Expression Blend (3 Days)
- 10554AD: Developing Rich Internet Applications Using Microsoft Silverlight 4 (5 Days)
Practice Tests
- MeasureUp (Measureup.com)
- Self Test Software (Selftestsoftware.com)
Community
- Wiki: Training and Certification Portal (en-US)
- Forum: Training and Certification (en-US)
- Microsoft Learning community
Related Forum Posts
If one of the posts in the following threads helps you answering your question, please vote them as helpful so other community members will find helpful information faster.