I have a class that I want to use to update a textbox when one of its properties changes. I also want to be able to change the classes property when the textbox changes. In other words, I want to be able to have two-way databinding. I have looked online, and all the example require a XAML file. As I am not familiar with XAML, I would like to stay away from that if it is possible.
Is it possible to have a two-way databinding with a class without using XAML?
Update:
I found this http://msdn.microsoft.com/en-us/library/ms743695%28v=vs.110%29.aspx, and it seems to work. However, I do not entirely understand what it is doing.
More specifically, I do not understand how PropertyChanged and OnPropertyChanged relate to each other.
In C# WPF you get PropertyChanged when you implement INotifyPropertyChanged.
So, if you write
You give the Observer (XAML) the Signal that the Property
PersonName
changed and it will update all e.g. UIElements linked to that Property.With
you overload the name of the Property (e.g. PersonName) as a string to signal which Property has changed.
With the
if(handler != null)
you say that you only send the signal if there is any Observer.If so, in the next line you really give the Signal.