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

傳回

綁定目標屬性上要設定的值。

備註

此實作提供了透過可擴充應用標記語言(XAML)綁定所有實用衍生類別(Binding、、 PriorityBindingMultiBinding和 )的基礎語法支援。

BindingBase此方法的類別實作預期會回傳一個由綁定結果產生的表達式物件。 綁定屬性的方法是將給定 DependencyProperty 的目標鎖定在給定 DependencyObject的屬性上。 這兩個資訊是透過查詢 IProvideValueTarget 上的 serviceProvider 實作來傳送,WPF XAML 讀取器會在解析綁定時提供該實作。 此基底類別實作負責檢查有效 DependencyPropertyDependencyObject。 若找到這些,實際回傳綁定表達式的實作將由各種派生類別負責,透過基底類別呼叫內部抽象方法實現。 否則,擴充功能會回傳綁定物件本身。 返回綁定本身會導致型別不匹配,但在正常情況下不應發生。

Important

由於此方法實作的 XAML 綁定語法依賴於實作內部覆寫,且本身 BindingBase.ProvideValue 是封存的,因此由 衍生 BindingBase 的自訂綁定類別無法正確作為 XAML 標記擴充功能。

適用於