Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Windows Presentation Foundation 4.5 Cookbook

You're reading from   Windows Presentation Foundation 4.5 Cookbook For C# developers, this book offers a fast route to getting more closely acquainted with the ins and outs of Windows Presentation Foundation. The recipe approach smoothes out the complexities and enhances learning.

Arrow left icon
Product type Paperback
Published in Sep 2012
Publisher Packt
ISBN-13 9781849686228
Length 464 pages
Edition 1st Edition
Languages
Arrow right icon
Author (1):
Arrow left icon
Pavel Yosifovich Pavel Yosifovich
Author Profile Icon Pavel Yosifovich
Pavel Yosifovich
Arrow right icon
View More author details
Toc

Table of Contents (18) Chapters Close

Windows Presentation Foundation 4.5 Cookbook
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
1. Foundations 2. Resources FREE CHAPTER 3. Layout and Panels 4. Using Standard Controls 5. Application and Windows 6. Data Binding 7. Commands and MVVM 8. Styles, Triggers, and Control Templates 9. Graphics and Animation 10. Custom Elements 11. Threading Index

Validating data


Data binding provides automatic updates from a source to a target (and vice versa in a two way binding). Some of these values are provided by some user of the system; consequently, not all values are valid. The binding system should have ways to catch such errors and allow the application to communicate to the user those errors. This is the role of data validation. In this recipe, we'll look at the validation support in data binding scenarios.

Getting ready

Make sure Visual Studio is up and running.

How to do it...

We'll create a simple entry form that validates its inputs according to some application-specific rules.

  1. Create a new WPF application named CH06.ValidatingData.

  2. Add a new class to be used as a data object named Person. Implement it as follows:

    class Person : INotifyPropertyChanged {
       protected virtual void OnPropertyChanged(string propName) {
          var pc = PropertyChanged;
          if(pc != null)
             pc(this, new PropertyChangedEventArgs(propName));
       }
     
       string...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at AU $24.99/month. Cancel anytime