BindingBase.ProvideValue(IServiceProvider) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt ein Objekt zurück, das auf die Eigenschaft festgelegt werden soll, auf die diese Bindung und Erweiterung angewendet werden.
public:
override System::Object ^ ProvideValue(IServiceProvider ^ serviceProvider);
public override sealed object ProvideValue (IServiceProvider serviceProvider);
override this.ProvideValue : IServiceProvider -> obj
Public Overrides NotOverridable Function ProvideValue (serviceProvider As IServiceProvider) As Object
Parameter
- serviceProvider
- IServiceProvider
Das Objekt, das Dienste für die Markuperweiterung bereitstellen kann. Kann null
sein.
Gibt zurück
Der Wert, auf den die Bindungszieleigenschaft festgelegt werden soll.
Hinweise
Diese Implementierung bietet die Basissyntaxunterstützung für die Bindung über XAML (Extensible Application Markup Language) für alle bereitgestellten praktischen abgeleiteten Klassen (Binding, PriorityBindingund MultiBinding).
Von BindingBase der Klassenimplementierung dieser Methode wird erwartet, dass sie ein Ausdrucksobjekt zurückgibt, das das Ergebnis einer Bindung ist. Das Binden einer Eigenschaft funktioniert, indem eine angegebene DependencyProperty für eine angegebene festgelegt wird DependencyObject. Diese beiden Informationselemente werden übertragen, indem eine IProvideValueTarget -Implementierung auf der serviceProvider
-Abfrage ausgeführt wird, die der WPF-XAML-Reader während der Analyse einer Bindung zur Verfügung stellt. Diese Basisklassenimplementierung ist für die Überprüfung auf gültige DependencyProperty und DependencyObjectverantwortlich. Wenn diese gefunden werden, fällt die tatsächliche Implementierung des Zurückgebens eines Bindungsausdrucks auf verschiedene abgeleitete Klassen, da die Basisklasse eine interne abstrakte Methode aufruft. Andernfalls gibt die Erweiterung das Bindungsobjekt selbst zurück. Die Rückgabe der Bindung selbst führt zu einem Typfehler, der jedoch unter normalen Umständen nicht auftreten sollte.
Wichtig
Da die Syntax für die Bindung über XAML, wie in dieser Methode implementiert, auf der Implementierung einer internen Außerkraftsetzung basiert und da BindingBase.ProvideValue selbst versiegelt ist, funktioniert eine benutzerdefinierte Bindungsklasse, die von BindingBase abgeleitet wird, nicht ordnungsgemäß als XAML-Markuperweiterung.