Lately Microsoft have been using some of the well known design patterns to ease and furnish work of a programmer who choose to bang keyboards using .NET. One good example is WPF commands. Microsoft at MSDN on Commanding: Commanding is an input mechanism in Windows Presentation Foundation (WPF) which provides input handling at a more semantic level than device input. It resembles and is inspired by the famous Command Design Pattern with Microsoft flavors added to it. This Routed command system as named by Microsoft is a modified version of the original command design pattern with routing capabilities. It is used to send command and / or behavioral notifications from UI controls. They are analogous to the Routed event system in WPF. The routed command system in WPF has two types of commands: Routed Commands Routed UI Commands It becomes clear from the name itself that the first is used to » Read more