Learn: in:
» back to Search Results

Course rating of 0 Vendor rating of 4


In this course, experienced developers who know the basics of Windows Forms development gain more advanced Windows Client design and development skills.


 
Course Outline
Summary

In this course, experienced developers who know the basics of Windows Forms development gain more advanced Windows Client design and development skills. WinForms and WPF programming models, as well as relative strengths and when to use each technology, are covered.

Audience Profile

This course is intended for Technology Specialists in the area of Windows Client Development who work in a development environment that uses Microsoft Visual Studio .NET 2010 and Microsoft .NET Framework 4.0 to create rich client applications for Windows.  

At Course Completion


After completing this course, students will be able to:
  • understand how varying business requirements influence the design decisions when planning a Windows Client application.
  • understand the new features of Visual Studio 2010 WPF
  • design and build a UI that provides the expected end-user experience and UI functionality
  • create a consistent and manageable user interface
  • understand best practices when testing and learn how to debug their applications
  • use advanced exception handling  in Windows Client application scenarios
  • implement advanced data binding scenarios
  • use coding techniques to improve the responsiveness of their applications
  • implement localization, user assistance, and accessibility features within an application
  • understand the basics of graphics in WPF
  • customize controls and introduce students to custom controls
  • implement application behaviors based on user actions or events by using attached properties and Expression Blend behaviors
  • develop data visualization within their applications in a manner that enables the application user to drill down into data visually
  • manage application state and settings throughout the application lifecycle
  • deploy their applications using the various methods supported by Visual Studio 2010
Course Outline

Module 1: Windows Client Application Design
The goal of this module is to ensure that students understand how varying business requirements influence the design decisions when planning a Windows Client application. Students will learn how design requirements, specifications, and business goals affect the choice between WPF and Windows Forms when updating (or planning a new) Windows Client application.

Lessons
  • Windows Client Technologies
  • Architectural Patterns
  • Interoperability between Windows Forms and WPF
Lab : Planning Windows Client Applications
  • Identify Windows Client Technologies
  • Choosing Design Patterns
  • Lab Application Guided Walk-Through
After completing this module, students will be able to:
  • Choose appropriate Windows client technologies
  • Choose appropriate architectural patterns
  • Identify areas for migration from WinForms
  • Identify areas for interoperability between WinForms and WPF
Module 2: Introduction to Visual Studio 2010 and WPF Version 4
The goal of this module is to introduce students to the new features that Visual Studio 2010 and WPF version 4 provide

Lessons

  • What's New in Visual Studio 2010?
  • What's New in WPF Version 4
Lab : Guided Tour of Visual Studio 2010 and XAML
  • Guided tour of Visual Studio 2010
  • Guided tour of XAML Editor
After completing this module, students will be able to:
  • Use new features in Visual Studio 2010
  • Use new features in WPF version 4
Module 3: Designing and Developing a User Interface
The goal of this module is to teach the student how to design and build a UI that provides the expected end-user experience and UI functionality, and retains that experience/functionality in various end-user environments, as well as when the application window resizes.

Lessons
  • Defining Page Layout
  • Using Content Controls
  • Using Item Controls
  • Sharing Logical Resources in a Window
Lab : Building a User Interface
  • Choosing User Interface Controls
  • Laying out the User Interface
  • Creating and Using Resource Dictionaries
After completing this module, students will be able to:
  • Define page layout
  • Use content controls
  • Use item controls
  • Share resources within a window or user control
Module 4: Taking Control of the User Interface
The goal of this module is to enable students to create a consistent and manageable user interface.

Lessons
  • Sharing Logical Resources in an Application
  • Creating Consistent User Interfaces by Using Styles
  • Changing the Appearance of Controls by Using Templates
  • Handling Events and Commands
Lab : Dynamically Controlling the User Interface
  • Creating Styles
  • Using Application Commands
  • Adding Routed Events
  • Creating a Custom Command
  • Migrating a Custom Command
After completing this module, students will be able to:
  • Share logical resources throughout an application
  • Create a consistent user interface by using styles
  • Change the appearance of controls by using templates
  • Handle events and commands
Module 5: Testing, Unit Testing, and Debugging
The goal of this module is to help students to develop good habits in regard to testing as well as enabling students to debug their applications. Students will also learn about advanced exception handling pertaining directly to Windows Client application scenarios

Lessons
  • WPF Testing Strategies
  • Debugging XAML
  • Providing User Feedback for Unhandled Exceptions
  • Understanding Security Features
Lab : Testing and Debugging WPF Applications
  • Unit Testing Strategy
  • Unit Testing WPF Applications
  • Debugging Applications in Visual Studio 2010
  • Advanced Exception Handling
After completing this module, students will be able to:
  • Implement a WPF unit test strategy
  • Debug XAML by using the WPF Visualizer and PresentationTraceSources
  • Provide user feedback for unhandled exceptions
  • Understand security features of an application
Module 6: Simple Data Binding and Validation
The goal of this module is to teach the student how to implement simple data binding and data validation in order to manage data in a data source (CRUD). In addition to learning how to bind a value to a UI element, the student should learn best practices concerning when to use the various implementations of data binding and how to connect to a data source with LINQ.

Lessons
  • Overview of Data Binding
  • Creating a Data Binding
  • Implementing Property Change Notification
  • Converting Data
  • Validating Data
  • Presenting Data at Design Time
Lab : Data Binding
  • Binding Controls
  • Implementing Value Converters
  • Validating Data
  • Implementing Property Change Notifications
After completing this module, students will be able to:
  • Explain WPF data binding concepts and terminology
  • Create a binding between a data source and a control
  • Implement property change notification
  • Convert data between the binding source and the binding target
  • Validate data entered by the user
  • Present data at design time
Module 7: Data Binding to Collections
The goal of this module is to enable the student to implement more advanced data binding scenarios, picking up where the previous module on data binding left off. The student will learn how to bind to ListView, GridView, DataGrid, and other collection classes.

Lessons
  • Binding to Collections of Objects
  • Using Collection Views
  • Creating Master-Detail User Interfaces
  • Using Data Templates
  • Presenting Design Time Data Collections
Lab : Data Binding to Collections
  • Binding to Collections of Data
  • Using Collection Views
  • Creating Master-Detail User Interfaces
  • Using Data Templates
After completing this module, students will be able to:
  • Bind to a collection of objects
  • Sort, filter, and group collections by using collection views
  • Create master-detail user interfaces
  • Customize data display by using data templates
  • Present data collections at design time
Module 8: Enhancing UI Responsiveness
The goal of this module is to teach the students how coding techniques can be used to improve the responsiveness of their applications.

Lessons
  • Implementing Asynchronous Processes
  • Implementing Responsive User Interfaces
Lab : Enhancing Application Performance
  • Asynchronous Programming Strategy
  • Asynchronous Programming
  • Parallelizing Tasks
After completing this module, students will be able to:
  • Implement asynchronous processes
  • Implement responsive user interfaces
Module 9: Integrating Localization and User Assistance Features
The goal of this module is to teach students how to implement localization, user assistance, and accessibility features within an application.

Lessons
  • Localization and Globalization
  • Implementing User Assistance Features
  • Providing User Accessibility Features
Lab : Localizing a WPF Application
  • Preparing for Localization for the LocBAML Approach
  • Localizing Resources by Using LocBAML
  • Preparing for Localization by Using Strongly Typed Resources
  • Localizing Resources by Using Strongly Typed Resources
  • Choosing a Localization Approach
After completing this module, students will be able to:
  • Describe WPF localization and globalization features
  • Implement localized WPF applications
  • Implement user assistance features
  • Provide user accessibility features
Module 10: WPF 2D Graphics, Multimedia, and Printing
The goal of this module is to teach the students the basics of graphics in WPF. The module will also provide an overview of multimedia (audio and video).

Lessons

  • Displaying 2D Graphics
  • Displaying Images
  • Adding Multimedia to WPF Applications
  • Creating and Printing Documents
Lab : Drawing 2-D Graphics
  • Identify the Appropriate Windows Client Technology
  • Creating the Data Access Layer and User Interface
  • Drawing Shapes, Painting with Brushes and Appling Effects
  • Adding Images
After completing this module, students will be able to:
  • Display 2D graphics
  • Add images in a WPF application
  • Add multimedia content to a WPF application
  • Create and print documents
Module 11: Control Customization
The goal of this module is to teach students how to customize controls and introduce students to custom controls.

Lessons

  • Overview of Control Authoring
  • Creating User Controls
  • Creating Custom Controls
  • Managing Control Appearance by Using Visual States
  • Integrating WPF and Windows Forms
Lab : Building a User Control
  • Identify the Approach Control Type
  • Creating a User Control in WPF
  • Adding a WPF Control to a Windows Forms Application
After completing this module, students will be able to:
  • Explain scenarios and options for creating new controls
  • Create user controls
  • Create custom controls
  • Integrate WPF and WinForms controls
Module 12: Attached Properties and Behaviors in WPF
The goal of this module is to teach the students how to implement application behaviors based on user actions or application events by using attached properties and Expression Blend behaviors.

Lessons
  • Implementing Attached Properties
  • Implementing Drag-and-Drop User Interfaces
  • Implementing Expression Blend Behaviors, Triggers and Actions
Lab : Implementing Drag-and-Drop Operations
  • Implementing Drag-and-Drop Operations
  • Implementing Expression Blend Behaviors
After completing this module, students will be able to:
  • Describe WPF attached properties
  • Implement drag and drop
  • Implement Expression Blend behaviors
Module 13: Animations in WPF
The goal of this module is to teach the student how to implement animations and to teach students how to develop data visualization within their applications in a manner that enables the application user to drill down into data visually. Students should also learn when animations should be used and why.

Lessons
  • Using Animations
  • Using Triggers
  • Implementing Data Visualizations
Lab : Creating Animations
  • Creating Animations Declaratively
  • Creating Animations Dynamically
  • Creating Routed Events
  • Handling Routed Events
After completing this module, students will be able to:
  • Explain when animations are appropriate for the user interface
  • Implement animation in WPF
  • Initiate animation by using triggers
  • Present data visualizations by using WPF
Module 14: Application State, Settings, and Lifecycle
The goal of this module is to teach students how to manage application state and settings throughout the application lifecycle.

Lessons

  • Creating Application Settings
  • Consuming Application Settings
  • Creating Custom Configuration Sections
Lab : Creating a Settings Dialog
  • Creating Application and User Setting by Using Visual Studio
  • Creating a Dialog Window
  • Reading and Writing Settings
  • Consuming Settings Properties
After completing this module, students will be able to:
  • Persist user and application settings
  • Consume user settings
Module 15: Configure and Deploy Windows Client Applications
The goal of this module is to teach students how to deploy their applications using the various methods supported by Visual Studio 2010.

Lessons

  • Deployment Options
  • Deploying a Standalone WPF Application
  • Deploying an XBAP Application
  • Configuring Security Settings
Lab : Deploying Applications
  • Developing a Standalone Installer
  • Configuring a ClickOnce Deployment
  • Updating a ClickOnce Deployment
After completing this module, students will be able to:
  • Explain deployment options
  • Deploy a standalone WPF application by using a Setup and Deployment project
  • Deploy a ClickOnce application
  • Configure security settings

Prerequisites & Certificates
Pre-Requisites

Before attending this course, students must have: - An understanding of the problem-solving techniques that apply to software development, including the following principles of software development: * modern software development models * typical phases of a software development lifecycle * concepts of event-driven programming * concepts of object-oriented programming * creating use-case diagrams * designing and building a user interface * developing a structured application - A general understanding of the purpose, function, and features of following .NET Framework topics: * Common Language Runtime * .NET Framework class library * Common Type System * Component interoperation * Cross-Language Interoperability * Assemblies in the Common Language Runtime * Application Domains * Runtime hosts supported by the .NET Framework - Experience using Visual Studio 2008 in the following task areas: * Declaring and initializing typed variables using the Camel case naming convention * Using arithmetic, relational, and logical operators in code statements * Using branching statements to control code execution * Using looping statements to iterate through collections or repeat steps until a specified condition is met * Creating classes and methods to establish the basic structure of an application * Using methods and events to implement the programming logic of an application * Identifying syntax and logic errors * Accessing and managing data from a data source - Experience in object oriented design and development as follows: 8 Creating and accessing classes and class properties * Creating and accessing methods and overloaded methods * Implementing inheritance, base classes, and abstract classes * Declaring, raising, and handling events * Responding to and throwing exceptions * Implementing interfaces and polymorphism * Implementing shared and static members * Implementing generics * Creating components and class libraries - Experience in N-Tier application design and development as follows: * Managing a software development process * Controlling input at the user interface level in Windows Client applications * Debugging, tracing, and profiling .NET applications * Monitoring and logging .NET applications * Implementing basic testing best practices * Performing basic Data Access tasks with LINQ = Basics of LINQ to XML = Basics of LINQ to Entities = Basics of LINQ to SQL * Implementing basic security best practices in .NET Applications = Basics of Code Access Security = Basics of Role-Based Security = Basics of Cryptography Services * Implementing basic service calls = Basics of consuming XML Web Services = Basics of consuming WCF Services * Using .NET Configuration Files * Deploying .Net Framework Applications using ClickOnce and the MS Installer

Certificates offered

Certificate of Completion


Cancellation Policy
10 business day cancellation policy. if the course is confirmed and the student cancels within 10 days of the course, then they get charged and apply a credit for future courses. If they cancel outside of 10 business days, then there are no charges at all.
Map & Reviews
CTE Solutions
[ View Provider's Profile ]

Reviews
 

This course has not yet been rated by one of our members.

If you have taken a course through this vendor please log into your account and leave feedback for this vendor. You will be helping ensure our members get directed to the best training facilities.

Here are some reviews of the training vendor.
I realize that we are constantly dealing with technology, but I still think for a registration fee of almost $3,000, that a hardcover book should be included. I know that the option to print the book on a one-time basis exists.
Reviewed by 2016
no
Reviewed by 2016
The instructor was very knowledgeable and answered all questions. Jarod did an excellent job presenting.
Reviewed by 2015
The room was cold. I had to sit next to the space heater. It would be good to tell future patrons to dress warmly AHEAD of time. No suprises.
Reviewed by 2015
He was great and offered his contact info for further questions.
Reviewed by 2015
Howard was a fantastic instructor and the course was exactly what I required.
Reviewed by 2014
The trainer was excellent - the course exceeded my expectations.
Reviewed by 2014
This course provides an excellent overview and a bit of practice on the various functions of SharePoint 2013. I was disappointed at the number of exceedingly long breaks given after each module. I would have preferred less break time and more content to the course. Having never taken a SharePoint course with another provider, I don't know if this is the norm with all providers of just this one in particular.
Reviewed by 2014
I ranked the "Use of Technology" low because for Users who were remote the VM's that were setup were a little wonky. Could be very slow at times and then sometimes they needed to be refreshed to work properly with the lab. In some instances we couldn't follow along as replication would not occur fast enough and we would have our lab cut short (for us remote Users).
Reviewed by 2014
The instructor was good at remembering to acknowledge the online students even though he was facing a classroom of students also.
Reviewed by 2014
Insructor was not so good with the live examples. Also the handouts was not so useful
Reviewed by 2013
The trainer was excellent, very knowledgeable and had a lot of valuable experience to share. The problem was that there were way too many workshops that took too long and interfered with getting the maximum benefit from the instructor and the course.
Reviewed by 2013
This was quite informative. It was a great opportunity to have ‘real life’ discussions with certified PMs. The instructor had excellent examples and was able to share his PM experiences with us with concrete examples. In addition, this was a great opportunity to network with private sector/public sector PMs and develop a better appreciation of PM on both sides of the fence. Cheers, CL
Reviewed by 2013
no
Reviewed by 2013
I did not like the video format
Reviewed by 2013
As a remote attendee, it appeared the instructor paid attention to the "Attendee" and "Chat" windows only a few times throughout the day, so I was not confident that he would see if I sent a message or raised my hand during the course.
Reviewed by 2013
The chairs were not very comfortable and the material contained spelling and grammatical error (a few but still)as well as repetition of words.
Reviewed by 2013
Was a bit slow the last 1/2 day. Of course, for some, this was the last of a 4 day course (not just 2 days).
Reviewed by 2013
I really enjoyed the course and I learned a lot. The pace was excellent.
Reviewed by 2013
good!
Reviewed by 2013
The room was excellent on its own - less distraction and no noise around you. There was no direction to the room when I walked in and therefore was not sure if I was heading in the right direction. We were not provided with the direction that there was coffee and fridge on the 3rd floor, and the bathroom floor was dirty.
Reviewed by 2012
This course was great, very informative, had Lionel as instructor and he was also very good.
Reviewed by 2012
Instructor was eager to assist but lacked subject matter expertise. Course time management was very poor. Content provided could have been delivered effectively in a one day course.
Reviewed by 2012
Good Course, good trainer. All questions addressed equally and in a timely professional manner.
Reviewed by 2011
The course content was interesting; however, the instructor didn't have enough knowledge about Microsoft Sharepoint 2010 Development and wasn't able to answer questions without google search. In the future CTE needs to make sure the instructors have real on-hands experience and are highly trained in the technologies they are supposed be teaching.
Reviewed by 2011
need-to-train-a-group-banner

This course currently does not have any dates scheduled. Please call 1-877-313-8881 to enquire about future dates or scheduling a private, in house course for your team.

This page has been viewed 3679 times.