Ich verwende eine Steuerelementvorlage, um Validierungsfehler auf jedem meiner Steuerelemente mithilfe des integrierten WPF-Überprüfungsmechanismus anzuzeigen, und alles funktioniert einwandfrei. Die Control sieht wie folgt aus:Wie wird die Validierungsvorlage ohne den Validierungsmechanismus verwendet?
<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>
ich gelesen habe, dass der Validierungsmechanismus der validierten Steuerungs oben mit der Steuervorlage (Standard ein oder einer eigenen wie oben) wickelt, wenn die Steuerung einen Fehler bekommt.
„Wenn das WPF-Validierungssystem ein ungültiges Steuerungs erkennt es und adorner erzeugt, die eine Steuerung (...) hält, fügt eine Steuerung hinein und Sets, die Vorlage auf den Inhalt der Steuerung Validation.ErrorTemplate angebracht Eigenschaft.
Sie den adorner über der ursprüngliche Steuer positioniert, so dass der AdornedElementPlaceholder genau über der Kontrolle ist und dass sie uns leicht die Kontrolle Vorlageninhalt bezogen auf den ursprünglich control“(see more) platzieren
Wie kann ich dasselbe Verhalten für eine andere Funktion ausführen? Ich meine "MyErrorTemplate" ohne das Validierungssystem des WPF, ist das möglich?
Sie für die IDataErrorInfo Schnittstelle SUCHEN ? WPF verwendet diese Schnittstelle, um Objekte zu überprüfen. (Siehe hier http://japikse.blogspot.fr/2009/07/idataerrorinfo-error-templates-and-wpf.html) –
Nein, ich bin nicht.Ich möchte die zuweisen Die gleiche Validierungsvorlage zu einem Steuerelement, ohne den Validierungsmechanismus zu verwenden –