Wednesday, December 5, 2012

WPF - 2

Cheat sheet:
- XAML for WPF: http://blog.blueboxes.co.uk/2009/02/03/xaml-for-wpf-cheatsheet/
- DataBinding: http://www.nbdtech.com/Blog/archive/2009/02/02/wpf-xaml-data-binding-cheat-sheet.aspx

Programming tools
http://www.wpftutorial.net/wpfdevtools.html

Themes:
http://wpf.codeplex.com/wikipage?title=WPF%20Themes&referringTitle=Home
- Download is here: http://wpf.codeplex.com/releases/view/14962

Data binding:
- See http://msdn.microsoft.com/en-us/library/ms750612.aspx
- Why we shouldn't use DependencyObject inside ViewModel layer: http://stackoverflow.com/questions/291518/inotifypropertychanged-vs-dependencyproperty-in-viewmodel
- How to serialize Dependency Object using XamlReader/Writer: http://www.codeproject.com/Tips/61443/Serialize-DependencyObject-it-s-easy
- How to reduce coding for INotifyPropertyChanged:
  - http://stackoverflow.com/questions/1315621/implementing-inotifypropertychanged-does-a-better-way-exist
  - Use CallerMemberName attribute available from .NET 4.5, see http://msdn.microsoft.com/en-us/library/system.componentmodel.inotifypropertychanged(v=vs.110).aspx

MVVM
 - How to implement Command pattern: http://www.codeproject.com/Articles/101881/Executing-Command-Logic-in-a-View-Model
 - Calling command by events: http://stackoverflow.com/questions/1048517/wpf-calling-commands-via-events

Topics:
- Async and data binding
- Types of bindings, multiple ? hierarchy ? collision ?
- Binding, converter, validation