Binding.TargetNullValue 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
원본 값이 null일 때 대상에 사용되는 값을 가져오거나 설정합니다.
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>
속성 값
원본 값이 null일 때 바인딩 대상에 사용되는 값입니다.
설명
TargetNullValue는 컬렉션을 바인딩하는 바인딩에 사용할 수 있으며 원본 데이터는 일부 항목에서만 누락된 정보에 null 을 사용합니다. 또한 Null 값을 원본 정보로 사용하여 사용자로부터 더 많은 정보가 필요하고 원본에서 완료되지 않은 레코드와 같은 항목을 나타내는 데이터베이스에서 데이터가 들어오는 일반적인 경우에 사용할 수도 있습니다.
바인딩에서 TargetNullValue 동작을 사용하는 데 권장되는 두 가지 패턴이 있습니다.
- 바인딩 소스는 원본의 특정 데이터 항목에서 오는 null 값을 대체할 수 있는 단일 값으로 작동하는 다른 경로에서 액세스하는 별도의 값을 제공합니다. 예를 들면 다음과 같습니다.
<Button Content="{Binding Path=NextItem, Mode=OneWay, TargetNullValue={Binding Path=NullValue}}"/>
여기서 는 NullValue
대체 값의 경로이며 다른 바인딩에서 참조됩니다.
- 리소스를 사용하여 데이터 원본이 null 을 제공하고 대체 값으로 사용할 다른 경로에 적합한 속성이 없는 경우 앱과 관련된 값을 제공합니다. 예를 들면 다음과 같습니다.
<Button Content="{Binding Path=NextItem, Mode=OneWay, TargetNullValue={StaticResource AppStringForNullInAStringABinding}}"/>
AppStringForNullInAStringABinding
여기서는 사용자가 대부분의 데이터에 데이터가 있어야 하지만 이 특정 항목에 원본의 데이터가 없음을 알 수 있는 "(값을 사용할 수 없음)"과 같은 리소스 문자열입니다. 값을 지역화할 수 있도록 리소스를 사용합니다.
FallbackValue 는 유사한 시나리오를 사용하는 유사한 속성입니다. 차이점은 바인딩이 경로 및 원본이 데이터 원본에서 전혀 평가되지 않거나 양방향 바인딩을 사용하여 원본에 설정하려고 하면 예외가 throw되는 경우 FallbackValue를 사용한다는 것입니다. Path가 계산되지만 값이 null인 경우 TargetNullValue를 사용합니다.
해당 바인딩이 대상 요소 및 대상 속성에 연결된 후에는 Binding 개체의 속성 값을 설정할 수 없습니다. 이 작업을 시도하면 런타임 예외가 발생합니다.