T9 encoding, decoding and prediction in C#

T9 stands for Text on 9 keys. It's the -patented- mobile phone technology that allows words in SMS messages to be entered by a single keypress for each letter. So instead of pressing the '3'-key three times to enter an 'f', you press the key only once. The software will then try to figure out whethe... [More]

U2U is still looking for colleagues

Today someone asked my if U2U is still looking for new colleagues, since some time passed since the announcements in popular job-sites. The answer is YES! If you’d like to join the U2U team, contact us! And maybe you’ll be joining us at TechEd Berlin. The perfect opportunity to get to know each oth... [More]

Building a generic EntityViewModel

In this blog post I want to show you a little ViewModel wrapper for entities I’ve built. You can use it to wrap entities who don’t need to support property change notifications, implementing the INotifyPropertyChanged interface. When your model’s entities support INotifyPropertyChanged and IDataErro... [More]

Essential WPF ListBox Styling

This article explains how to style a WPF ListBox. I know: there must be a million articles about this subject. So if you're looking for kaleidoscopic brushes, dazzling effects, and animations from outer space, then feel free to press the Back button in your browser to return to your search engine pa... [More]

Safe disposal of WCF proxies

The issue has been known for a long time: you cannot safely dispose a WCF proxy that inherits from ClientBase<T> with a using statement, because the dispose method may throw.  For more information, see http://www.google.com/search?q=wcf+proxy+dispose. However, I’ve always found most solu... [More]

A Rich HTML TextBlock for WPF

This article -proudly- presents a WPF control that displays rich text from an HTML source: it has a Text dependency property that you can bind to a HTML-formatted string. It's designed to display -not edit- rich information messages like warnings, error messages, and other feedback e.g. from a local... [More]