PDFx – Property Dependency Framework – Part III, Getting started

The PDFx is a lightweight open source .NET library that allows developers to describe dependencies between Properties in declarative C# code. Once relationships are registered, the framework monitors property changes and ensures that the INotifyPropertyChanged.PropertyChanged event is fired for all directly and indirectly dependent properties in a very efficient way. The library is available for WPF, Silverlight, WinRT (Windows Store) and Windows Phone.

I’ve developed the PDFx as an InterKnowlogy RECESS project and published the source code and examples on codeplex.

In a series of blog posts I am going to cover the library’s most important features:

Using PDFx in your Project

Adding a reference to the PDFx

Before using the PDFx, you have to decide whether you would like to go with the platform independent Portable Class Library or one of the feature richer platform specific libraries. Please check out Library Versions to learn more about the different versions.

If you decide to go forward with the Portable Class library, all you need to do is add a project reference to PropertyDependencyFramework.dll.

If you decide to go forward with a platform specific library (recommended), you need to add a project reference to PropertyDependencyFramework.dll and a platform specific binary.

Platform .NET 4.5 Portable Class Library
Path bin\Release\PCL\PropertyDependencyFramework.dll
WinRT WP8
bin\Release\WindowsStore\PropertyDependencyFramework.dll &
bin\Release\WindowsStore\PropertyDependencyFramework_WindowsStore.dll
bin\Release\WP8\PropertyDependencyFramework.dll &
bin\Release\WP8\PropertyDependencyFramework_WP8.dll
WPF SL5
bin\Release\WPF\PropertyDependencyFramework.dll & bin\Release\WPF\PropertyDependencyFramework_WPF.dll bin\Release\SL5\PropertyDependencyFramework.dll &
bin\Release\SL5\PropertyDependencyFramework_Silverlight.dll

Deriving from Bindable

The PDFx’s features are all exposed through protected methods which live in the PCL’s Bindable-class as well as in the platform specific BindableExt-classes.
Every class, in which you would like to use the PDF’x functionality consequently needs to eventually derive from Bindable or BindableExt which both live in the PropertyDependencyFramework-Namespace.

In case you’re already using a development framework (such as MVVMLight) and cannot or don’t want to change your ViewModel’s base class, please refer to Using PDFx with an existing 3rd party framework to learn how you can merge the PDFx into those scenarios.

2 thoughts on “PDFx – Property Dependency Framework – Part III, Getting started

  1. Pingback: PDFx – Property Dependency Framework – Part I, Introduction | //InterKnowlogy/ Blogs

  2. Pingback: PDFx – Property Dependency Framework – Part II, Library Versions | //InterKnowlogy/ Blogs

Leave a Reply

Your email address will not be published. Required fields are marked *