It would be easy to think of Rx as an esoteric extension of LINQ that doesn't necessarily relate to anything in the real world. Nothing could be further from the truth. Not only is Rx highly useful “out of the box” in many circumstances, such as simplifying asynchronous programming, but it is highly extensible and can be applied to specific problem domains.
The code interacting with the user interfaces that we've presented in this book hasn't been very elegant. In simple XAML-based samples, there is a lot of usage of
Observable.FromEvent, as well as explicitly setting properties on controls.
While this approach is reasonable (though, again, not very elegant!) for small samples, it has a number of flaws. One of the ...