BindingBase.ProvideValue(IServiceProvider) BindingBase.ProvideValue(IServiceProvider) BindingBase.ProvideValue(IServiceProvider) BindingBase.ProvideValue(IServiceProvider) Method

Definition

Gibt ein Objekt zurück, das auf die Eigenschaft festgelegt werden soll, auf die diese Bindung und Erweiterung angewendet werden.Returns an object that should be set on the property where this binding and extension are applied.

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 IServiceProvider IServiceProvider IServiceProvider

Das Objekt, das Dienste für die Markuperweiterung bereitstellen kann.The object that can provide services for the markup extension. Kann null sein.May be null;

Gibt zurück

Der Wert, auf den die Bindungszieleigenschaft festgelegt werden soll.The value to set on the binding target property.

Hinweise

Diese Implementierung bietet die Basis Syntax Unterstützung für das Binden Extensible Application Markup Language (XAML)Extensible Application Markup Language (XAML) durch für alle bereitgestellten, praktischenBindingabgeleiteten Klassen MultiBinding(, PriorityBindingund).This implementation provides the base syntax support for binding through Extensible Application Markup Language (XAML)Extensible Application Markup Language (XAML) for all provided practical derived classes (Binding, PriorityBinding, and MultiBinding).

Bei BindingBase der Klassen Implementierung dieser Methode wird erwartet, dass ein Expression-Objekt zurückgegeben wird, das das Ergebnis einer Bindung ist.The BindingBase class implementation of this method is expected to return an expression object that is the result of a binding. Das Binden einer Eigenschaft funktioniert, indem eine DependencyProperty bestimmte für ein DependencyObjectbestimmtes als Ziel verwendet wird.Binding a property works by targeting a given DependencyProperty on a given DependencyObject. Diese beiden Informationen werden durch Abfragen IProvideValueTarget einer-Implementierung in der serviceProviderübertragen, die der WPFWPF XAMLXAML Reader während der Verarbeitung einer Bindung verfügbar macht.These two pieces of information are transmitted by querying for an IProvideValueTarget implementation on the serviceProvider, which the WPFWPF XAMLXAML reader makes available during parsing of a binding. Diese Basisklassen Implementierung ist für die Überprüfung auf gültige DependencyProperty und DependencyObjectzuständig.This base class implementation is responsible for checking for a valid DependencyProperty and DependencyObject. Wenn diese gefunden werden, fällt die tatsächliche Implementierung der Rückgabe eines Bindungs Ausdrucks in verschiedene abgeleitete Klassen, die implementiert werden, indem die Basisklasse eine interne abstrakte Methode aufruft.If these are found, the actual implementation of returning a binding expression falls to various derived classes, as implemented by having the base class call an internal abstract method. Andernfalls gibt die Erweiterung das Bindungs Objekt selbst zurück.Otherwise, the extension returns the binding object itself. Das Zurückgeben der Bindung selbst führt zu einem Typen Konflikt Fehler, aber dies sollte unter normalen Umständen nicht eintreten.Returning the binding itself results in a type mismatch error, but this should not occur under normal circumstances.

Wichtig

Da die Syntax für die Bindung XAMLXAML durch gemäß der Implementierung in dieser Methode auf der Implementierung einer internen außer Kraft BindingBase.ProvideValue Setzung basiert und selbst versiegelt ist, funktioniert eine benutzerdefinierte BindingBase Bindungs Klasse, die von abgeleitet wird, nicht ordnungsgemäß als XAMLXAML Markup Erweiterung.Because the syntax for binding through XAMLXAML as implemented in this method relies on implementing an internal override, and because BindingBase.ProvideValue itself is sealed, a custom binding class that derives from BindingBase will not function correctly as a XAMLXAML markup extension.

Gilt für: