Share via


Exam 70-511 - TS: Windows Applications Development with Microsoft .NET Framework 4

Overview


Language(s): English
Audiences(s): Developers
Technology: Microsoft Visual Studio 2010
Type: Proctored Exam

Exam Topics Covered

This exam is designed to test the candidate's knowledge and skills for developing applications using Windows Forms, WPF and the .NET Framework 4.

Questions that contain code will be presented in either VB or C#. Candidates can select one of these languages when they start the exam.

Audience Profile

The candidate works in a development environment that uses Microsoft Visual Studio .NET 2010 and Microsoft .NET Framework 4.0 to create WinForms and WPF applications. The candidate should have at least one year experience developing Windows-based application by using Visual Studio, including at least six month of experience with Visual Studio 2010 Professional.
In addition, the candidate should be able to demonstrate the following:

  • a solid understanding of the .NET Framework 4.0 solution stack for WPF and WinForm applications
  • experience in creating data-driven user interfaces for WPF and WinForm applications
  • experience in creating layout by using Extensible Application Markup Language (XAML)
  • experience in programming against the WPF and WinForm object model
  • experience with unit testing using MSTest
  • experience with setup and deployment projects

Credit Toward Certification

When you pass Exam 70-511: TS: Windows Application Development with Microsoft .NET Framework 4, you complete the requirements for the following certification(s):

  • MCTS: .NET Framework 4, Windows Applications

Exam 70-511: TS: Windows Applications Development with Microsoft .NET Framework 4 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 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.

Skills Measured


Building a User Interface by Using Basic Techniques (23%)

  • Choose the appropriate control class.

    This objective may include but is not limited to: evaluating design requirements and then selecting the most appropriate control based on those requirements; recognizing when none of the standard controls meet requirements; item controls, menu controls, content controls
    This objective does not include: designing a custom control

  • Implement screen layout by using nested control hierarchies.

    This objective may include but is not limited to: using panel-derived controls, attaching properties
    This objective does not include: items controls, control customization

  • Create and apply styles and theming.

    This objective may include but is not limited to: application-level styles, overriding styles, style inheritance, Generic.xaml, theming attributes
    This objective does not include: data-grid view style sharing

  • Manage reusable resources.

    This objective may include but is not limited to: fonts, styles, data sources, images, resource dictionaries, resource-only DLLs

  • Implement an animation in WPF.

    This objective may include but is not limited to: creating a storyboard; controlling timelines; controlling the behavior when the animation completes; double, color, and point animations; starting an animation from code and from XAML
    This objective does not include: direct rendering updates, implementing key frame animations

Enhancing a User Interface by Using Advanced Techniques (21%)

  • Manage routed events in WPF.

    This objective may include but is not limited to: tunneling vs. bubbling events, handling and cancelling events
    This objective does not include: simple event handling; creating custom events

  • Configure WPF commanding.

    This objective may include but is not limited to: defining WPF commands based on RoutedCommand; associating commands to controls; handling commands; command bindings, input gestures
    This objective does not include: creating custom commands by implementing ICommand

  • Modify the visual interface at run time.

    This objective may include but is not limited to: adding/removing controls at run time; manipulating the visual tree; control life cycle; generating a template dynamically
    This objective does not include: instantiating forms and simple modification of control properties at runtime

  • Implement user-defined controls.

    This objective may include but is not limited to:deciding whether to use a user/composite, extended, or custom control; creating a user/composite control; extending from an existing control
    This objective does not include: creating a custom control by inheriting directly from the Control class and writing code

  • Create and display graphics.

    This objective may include but is not limited to: creating and displaying graphics by using geometric transformation; brushes; drawing shapes; clipping; double buffering; overriding Render (WPF) and OnPaint (WinForms); differentiating between retained and non-retained graphics
    This objective does not include: creating and displaying three-dimensional graphics; hit testing; creating images

  • Add multimedia content to and application in WPF.

    This objective may include but is not limited to: media player vs. media element; adding a sound player; images
    This objective does not include: buffering

  • Create and apply control templates in WPF.

    This objective may include but is not limited to: template binding
    This objective does not include: styling and theming; data templating

  • Create data, event, and property triggers in WPF:

Managing Data at the User Interface Layer (23%)

  • Implement data binding.

    This objective may include but is not limited to: binding options, static and dynamic resources, element bindings, setting the correct binding mode and update mode; binding to nullable values
    This objective does not include: binding to a specific data source

  • Implement value converters in WPF.

    This objective may include but is not limited to: implementing custom value converters, implementing multivalue converters

  • Implement data validation.

    This objective may include but is not limited to: handling validation and providing user feedback via the error provider (WinForms) or data templates (WPF), IDataErrorInfo, validation control, form validation and control validation

  • Implement and consume change notification interfaces.

    This objective may include but is not limited to: implementing INotifyPropertyChanged; using INotifyCollectionChanged (ObservableCollection)

  • Prepare collections of data for display.

    This objective may include but is not limited to: filtering, sorting, and grouping data; LINQ, CollectionView (WPF), BindingSource object (WinForms)

  • Bind to hierarchical data.

    This objective may include but is not limited to: TreeView; MenuControl

  • Implement data-bound controls.

    This objective may include but is not limited to: using the DataGridView (WinForms) or DataGrid (WPF) control to display and update the data contained in a data source, implementing complex data binding to integrate data from multiple sources; ItemsControl-derived controls (WPF)

  • Create a data template in WPF.

    This objective may include but is not limited to: implementing a data template selector; using templates with ItemsControl

Enhancing the Functionality and Usability of a Solution (17%)

  • Integrate WinForms and WPF within an application.

    This objective may include but is not limited to: using ElementHosts within WinForms and ControlHosts within WPF; using the PropertyMap property

  • Implement asynchronous processes and threading.

    This objective may include but is not limited to: implementing asynchronous programming patterns; marshalling between threads; freezing UI elements; using timers; Task Parallel Library; parallel LINQ; using the dispatcher; BackgroundWorker component

  • Incorporate globalization and localization features.

    This objective may include but is not limited to: loading resources by locale; marking localizable elements; using culture settings in validators and converters; using language properties and rendering direction properties; working with resource files for localization; determining installed locales; regional settings

  • Implement drag and drop operations within and across applications.

    This objective does not include: Dynamic Data Exchange (DDE)

  • Implement security features of an application.

    This objective may include but is not limited to: configuring Software Restriction Policy (SRP); full trust and partially trusted security; interoperability with legacy CAS policy; User Account Control (UAC)

  • Manage user and application settings.

    This objective may include but is not limited to: creating application settings; creating user settings; loading and saving settings
    This objective does not include: persisting to database

  • Implement dependency properties.

    This objective may include but is not limited to: enabling data binding and animation, property metadata, property change callbacks

Stabilizing and Releasing a Solution (17%)

  • Implement a WPF test strategy.

    This objective may include but is not limited to: automation peer, UI automation, IntelliTrace

  • Debug XAML by using the WPF Visualizer.

    This objective may include but is not limited to: accessing the Visualizer, drilling down into the visual tree, viewing and changing properties
    This objective does not include: setting a breakpoint and stepping through code

  • Debug WPF issues by using PresentationTraceSources.

    This objective may include but is not limited to: animation, data binding, dependency properties

  • Configure a ClickOnce deployment.

    This objective may include but is not limited to: configuring the installation of a WinForms, WPF, or XBAP application by using ClickOnce technology; choosing appropriate settings to manage upgrades

  • Create and configure a Windows Installer project.

    This objective may include but is not limited to: configuring a setup project to add icons during setup, setting deployment project properties, configuring conditional installation based on operating system versions, setting appropriate Launch Conditions based on the .NET Framework version, adding custom actions to a setup project, adding error-handling code to a setup project

  • Configure deployment security settings.

    This objective may include but is not limited to: configuring and integrating UAC by using ClickOnce deployments; setting appropriate security permissions to deploy the application

Preparation Materials


Learning Plans and Classroom Training

Books

Practice Tests

Community


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.

Other languages

This article is also available in other languages

Norwegian