Я использую шаблон элемента управления, чтобы показать ошибки проверки на каждом из моих элементов управления, используя встроенный механизм проверки WPF, и все работает нормально.Шаблон controlTemplate выглядит следующим образом:
<ControlTemplate x:Key="MyErrorTemplate" TargetType="{x:Type Control}">
<StackPanel Orientation="Horizontal">
<Border BorderBrush="Red" BorderThickness="2" CornerRadius="3">
<AdornedElementPlaceholder Name="MyAdorner" />
</Border>
<Image Name="imgError"
Source="/MyAssembly;component/Images/ValidationIcon.png"
ToolTip="{Binding ElementName=MyAdorner, Path=AdornedElement.(Validation.Errors)[0].ErrorContent}"/>
</StackPanel>
</ControlTemplate>
Я прочитал, что механизм проверки оборачивает проверенный элемент управления шаблоном элемента управления (стандартным или пользовательским, как указано выше) всякий раз, когда элемент управления получает ошибку.
"Когда система проверки WPF обнаруживает недопустимый элемент управления, она создает и украшатель, который содержит элемент управления (...), вставляет в него элемент управления и устанавливает этот шаблон элемента управления для содержимого Validation.ErrorTemplate.присоединенное свойство.
Он размещает автора над исходным элементом управления, так что держатель AdornedElementPlace находится точно над элементом управления и позволяет легко размещать содержимое шаблона элемента управления относительно исходного элемента управления "( подробнее )
Как выполнить такое же поведение для другой функции?Я имею в виду использовать «MyErrorTemplate» без системы проверки WPF, возможно ли это?