The DependencyProperty system is really useful in a number of ways, but one which is causing me a little trouble at the moment is, with the DataContext property, doing some type checking. See below for my current approach, which already stops invalid types from causing weird magic-sting-namespace-collisions, but won't actually error on a value being assigned. system is really useful