WPF Attached Property Data Binding
Solution 1:
Believe it or not, just add Path=
and use parenthesis when binding to an attached property:
IsChecked="{Binding Path=(local:Attached.Test), Mode=TwoWay, RelativeSource={RelativeSource Self}}"
In addition, your call to RegisterAttached
should pass in "Test" as the property name, not "TestProperty".
Solution 2:
I'd have preferred to post this as a comment on Kent's answer but since I don't have enough rep to do so... just wanted to point out that as of WPF 4.5, adding Path=
isn't necessary anymore. However the attached property name still needs to be wrapped with parentheses.