Привязки в свойствах цели стиля кнопки для кнопки, для которой больше не установлены свойства.Вам нужно перенаправить их на UserControl
, если вы хотите сохранить целостность стиля:
<!-- Inside UserControl declaration -->
<Button Content="{Binding Caption, RelativeSource={RelativeSource AncestorType=UserControl}}"
Tag="{Binding ImageSource, RelativeSource={RelativeSource AncestorType=UserControl}}"/>
Где Caption
и ImageSource
должны быть новыми свойствами зависимостей , определенными вUserControl (в коде позади).
Обратите внимание, что вы никогда не сможете привязаться к Content
в UserControl
(отсюда свойство Caption
), здесь сам Button
равен Content
из UserControl
.
В качестве альтернативы вы можете напрямую изменить таргетинг в стиле, изменив AncestorType
на UserControl
, который обходит Button
.Связывание за пределами шаблонного контроля не совсем хорошая практика, но вы все еще находитесь внутри UserControl
, так что это может быть простительно.
В любом случае, это немного хакерски, и лучше вместо этого унаследовать от Button
.