Зачем создавать член DependencyProperty таким образом:
public static readonly DependencyProperty DepProperty = DependencyProperty.Register(...);
, а не так:
protected static readonly DependencyProperty DepProp = DependencyProperty.Register(...);
Почему нам нужно использовать элемент DevProp извне, когда у нас естьCLR "обертки":
public bool Dep
{
get { return (bool)GetValue(DepProperty); }
set { SetValue(DepProperty, value); }
}