Binding.TargetNullValue 屬性

定義

當來源值為 時,取得或設定目標所使用的值。

public:
 property Platform::Object ^ TargetNullValue { Platform::Object ^ get(); void set(Platform::Object ^ value); };
IInspectable TargetNullValue();

void TargetNullValue(IInspectable value);
public object TargetNullValue { get; set; }
var object = binding.targetNullValue;
binding.targetNullValue = object;
Public Property TargetNullValue As Object
<Binding TargetNullValue="nullValueString" />
- or -
<Binding>
  <Binding.TargetNullValue>
    nullValue
  </Binding.TargetNullValue>
</Binding>

屬性值

Object

Platform::Object

IInspectable

當來源值為 時,綁定目標所使用的值。

備註

TargetNullValue 可能用於綁定集合的綁定,而來源資料只在部分項目中用 null 來處理缺失資訊。 它也可能用於一般情況,例如資料來自資料庫,該資料庫使用 空值 作為來源資訊來表示某個資訊,例如需要使用者提供更多資訊且來源資料不完整的紀錄。

綁定中使用 TargetNullValue 行為有兩種推薦模式:

  • 綁定來源提供一個獨立的值,由另一條路徑存取,作為單例值,可以替換來源中特定資料 項目的空 值。 例如:
<Button Content="{Binding Path=NextItem, Mode=OneWay, TargetNullValue={Binding Path=NullValue}}"/>

此處, NullValue 是通往替代值的路徑,且由另一個 綁定(Binding)所參考。

  • 利用資源提供一個針對你應用程式的值,以防資料來源為 且在其他路徑中沒有合適的屬性作為替換值。 例如:
<Button Content="{Binding Path=NextItem, Mode=OneWay, TargetNullValue={StaticResource AppStringForNullInAStringABinding}}"/>

這裡有一個 AppStringForNullInAStringABinding 資源字串,類似「(value not available)」,讓使用者知道大部分資料中應該都有資料,但這個特定項目沒有來源資料。 善用資源,讓價值能夠在地化。

FallbackValue 是一個類似的屬性,場景也類似。 差別在於,綁定會使用 FallbackValue,當路徑與來源完全不在資料來源上評估,或嘗試用雙向綁定設定在來源時拋出例外。 如果 路徑 有評估,但那裡找到的值是 null,則會使用 TargetNullValue。

在綁定物件綁定到目標元素和目標屬性後,你無法設定 該物件的 屬性值。 如果你嘗試這樣做,會遇到執行時例外。

適用於

另請參閱