Короткий вопрос:WPF - доступ родительских свойств из триггера части ControlTemplate внутреннего элемента управления
В случае, если у вас есть контроль, состоящий из нескольких частей (например, DatePicker, который состоит из PART_Root, PART_Button, PART_Textbox и т.д ...) , как вы можете связать триггер шаблона управления внутренней частью с действительностью всего элемента управления?
Длинный вопрос:
Я пытаюсь настроить шаблон управления DatePicker, и он состоит из нескольких основных частей, самое главное:
- PART_Root
- PART_Button
- PART_TextBox
I я переопределяю шаблон PART_TextBox, настроив DatePickerTextBox на стиль, который по сути заменяет только содержимое PART_TextBox DatePicker.
Теперь я хочу реализовать некоторые специальные пользовательские элементы проверки в шаблоне управления PART_Textbox, но я не могу заставить их показывать. Я попытался с помощью
<DataTrigger Binding="{Binding Path=Validation.HasError, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type DatePicker}}}">
, но по какой-то причине он не работает ...
Забавная вещь, привязка отлично работает при установке непосредственно на свойство Видимости элементов, которые отображаются верхней функцией DateTrigger: S –