Project Description

To make CLR object's properties automatically notify value changes so that WPF data binding engine can update UI accordinally. The solution utilizes .NET custom TypeDescriptor mechanism to selectively override existing CLR property's behavoir or create fresh new property for data binding. Property change notification can be triggered by instance's events (for example, SomePropertyChanged event) or external events (for example, a Timer's Elapsed event).

On top of the implementation stack, there will be an Application Model layer to make things more earier. It is being designed right now.

With only one line of code, your binding to the DataTime.Now is made alive for WPF data binding. Try it and provide feedback to us!


The ultimate goal for this project is to make every CLR object a first-citizen in WPF world which, for example, supporting dynamic data binding, routed eventing, commanding, etc. with less or no programming efforts.

The solution starts from promoting/creating properties which support value change notifications, which is the most common scenario within our team.


This section lists common scenarios during WPF application development in which data object is not designed to work with WPF data binding engine.

Make existing property alive on interval

Make existing property alive on eventing

Create new active property on eventing out of event arguments



Make DateTime.Now Alive

Make Speech Recognition Engine Alive

Technical Points

This section list several issues in providing reasonable solution to aforementioned scenarios.


To be written...


To be written...

Further Considerations

Please let me know more scenarios and areas we could make it easier.

Last edited May 23, 2008 at 6:10 AM by JGTM, version 7