Binding.FallbackValue 속성

정의

바인딩에서 값을 반환할 수 없는 경우 사용할 값을 가져오거나 설정합니다.

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

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

속성 값

Object

Platform::Object

IInspectable

바인딩이 값을 반환할 수 없을 때 사용할 값입니다.

설명

일반적으로 UI에서 문자열을 표시하는 바인딩에 FallbackValue를 지정합니다. 이 경우 FallbackValue는 문자열이기도 합니다. 이 문자열을 더 쉽게 지역화할 수 있도록 리소스를 사용할 수 있습니다.

FallbackValue에 리터럴 문자열을 지정하는 경우 특성에 대한 {Binding} 태그 확장 사용이 이미 따옴표 안에 있으므로 문자열에 공백이 포함된 경우 {Binding} 태그 확장 사용량 내에서 FallbackValue 값에 대체 따옴표를 사용해야 합니다. 예: <object property="{Binding FallbackValue='A literal string'}" />.

{Binding} 태그 확장 사용 내에서 사용되는 경우 FallbackValue 값은 0을 문자열 바인딩의 문자열로 처리하거나 열거형 값을 변환하는 등 XAML에서 이미 사용할 수 있는 암시적 문자열 변환을 사용할 수 있습니다. 예를 들어 는 <object property="{Binding Path=Visibility, FallbackValue=Collapsed}" /> 파서가 문자열 "Collapsed"를 평가하고 Visibility.Collapsed를 Visibility 값의 대체값으로 반환할 수 있기 때문에 유효 합니다 .

TargetNullValue 는 유사한 시나리오를 사용하는 유사한 속성입니다. 차이점은 바인딩이 데이터 원본에서 경로 가 전혀 평가되지 않는 경우 또는 양방향 바인딩을 사용하여 원본에 설정하려고 하면 데이터 바인딩 엔진에서 catch된 예외가 throw되는 경우 FallbackValue를 사용한다는 것입니다. FallbackValue는 원본 값이 dependency 속성 sentinel 값 DependencyProperty.UnsetValue인 경우에도 사용됩니다. 바인딩은 경로원본이 계산되지만 값이 null인 경우 TargetNullValue를 사용합니다.

해당 바인딩이 대상 요소 및 대상 속성에 연결된 후에는 Binding 개체의 속성 값을 설정할 수 없습니다. 이 작업을 시도하면 런타임 예외가 발생합니다.

적용 대상

추가 정보