Binding.TargetNullValue 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
當來源值為 空時,取得或設定目標所使用的值。
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>
屬性值
當來源值為 零時,綁定目標所使用的值。
備註
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。
在綁定物件綁定到目標元素和目標屬性後,你無法設定 該物件的 屬性值。 如果你嘗試這樣做,會遇到執行時例外。