Le attached properties sono un meccanismo "furbo" per arricchire elementi WPF con proprietà che, sebbene memorizzate nell'oggetto stesso, sono definite in un altro elemento.
Supponiamo di avere la necessità di aggiungere ad un Button una proprietà CustomValue ed usarla in XAML.
Definisco una classe ButtonExtender che espone un attached property CustomValue:
E la utilizzo in XAML:
Notate l'uso delle parentesi nell'utilizzo dell'attached property via databinding.