BindingBase.ProvideValue(IServiceProvider) 方法

定義

傳回物件,這個物件應該設定於套用這個繫結和延伸的屬性上。

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

參數

serviceProvider
IServiceProvider

可以為標記延伸提供服務的物件。 可以是 null

傳回

要針對繫結目標屬性設定的值。

備註

此實作針對所有提供的實際衍生類別 Binding , (、 PriorityBindingMultiBinding) ,提供可延伸應用程式標記語言 (XAML) 的基底語法支援。

BindingBase此方法的類別實作預期會傳回系結結果的運算式物件。 系結屬性的運作方式是將指定 DependencyProperty 的目標設為指定的 DependencyObject 。 這兩項資訊會透過查詢 IProvideValueTarget 上的 serviceProvider 實作來傳輸,WPF XAML 讀取器會在剖析系結期間提供。 這個基類實作負責檢查有效的 DependencyPropertyDependencyObject 。 如果找到這些專案,傳回系結運算式的實際實作會落到各種衍生類別,因為基類呼叫內部抽象方法所實作。 否則,延伸模組會傳回系結物件本身。 傳回系結本身會導致類型不符錯誤,但這不應該在正常情況下發生。

重要

因為此方法中所實作的 XAML 系結語法依賴實作內部覆寫,而且 BindingBase.ProvideValue 因為本身是密封的,所以衍生自 BindingBase 的自訂系結類別將無法正確當做 XAML 標記延伸運作。

適用於