
Explore how Windows Presentation Foundation enables building unified, high-performance desktop apps for Windows using the MVVM pattern, with controls like grids, text boxes, panels, data templates, control templates, and triggers.
A bare WPF application - first hands on.
You will get familiar with the Visual Studio IDE for developing WPF Applications.
This is a mandatory session for understanding MVVM design pattern in a practical way.
Introduction to working with Data Grids control. At the end of the session you would be confident in developing applications using data grids and binding data to the same using the MVVM pattern.
Introduction to Commands in WPF. Working with commands.
A general session that gives you hands on experience in building UI layouts easily.
Working with the MVVM pattern by using commands in the view models.
Explore data binding in WPF with MVVM by comparing one-way, two-way, and one-way-to-source bindings, and see how binding source interacts with dependency properties.
This is a mandatory session - we will deal why observable collections play a very important role in WPF.
Developing the application to read data from JSON file and also introduction for using the NuGet packages.
Working with List Views.
Introduction to data templates using list views.
Working with the List Box controls and passing data to the view models using binding adhering to the MVVM pattern.
This is a lengthy general discussion on the building UIs. Grids, Borders, Layouts etc.
Set default selections in grids and listboxes using the MVVM pattern and LINQ, binding the selected item and using first or default logic.
Using the grid splitter to for better UIs
Making the grid splitter better with simple UI techniques.
Implementing the IValueConverter. Purpose of Value Converters!
Multi Binding and Multi Value Converters - Debugging.
A very quick introduction to Styles before we launch into advanced styling latter on the series.
Styles In Depth - Inheritance Foundation
Explore styling a WPF button via a custom control template, adding a rounded border and icon, using content presenter and template binding, and applying triggers for hover and click states.
Discover the three WPF triggers: trigger, data trigger, and event trigger, and how they monitor dependency properties, data changes, and UI events to drive property changes and actions.
Working with property triggers and multi property triggers!
Apply data triggers in WPF to change button backgrounds and styles based on bound data, using binding, element name, and the content presenter.
Learn how multi data triggers in WPF MVVM dynamically color and update combo box and list box items based on country and region conditions, using the view model data.
Background Workers are a Key to build responsive UIs in WPF. This is a mandatory session.
Gives you an absolute hands on experience with stack panels.
Showcases how the wrap panel wraps content into multiple rows as the window size changes. Demonstrates binding an items control to an observable employee view model with an item template.
Updated December 2019
Hey!!
This is an amazing course if you are looking to learn WPF from the scratch and build real world applications. On this course I'll extensively cover the practical aspects in developing WPF applications using the MVVM design pattern. Hope you would enjoy the course.
I've been working on WPF and building enterprise applications for various fortune 500 organisations all across my career in the software industry.
You'd get a chance to learn and get hands on experience working on various topics like
User Controls.
Commands and the Command Pattern.
Buttons, TextBlocks, TextBoxes, Panels, List Views, List Boxes, Data Grids and various other user controls.
Data Triggers, Property Triggers and Event Triggers.
Data Templates.
Control Templates.
Working with the MVVM design pattern.
Practical challenges working with MVVM pattern and their solutions.
Access to exercises and the code.
You can expect me to keep adding new videos and practice exercises every week for the next few months.
Cheers!