uwp
바인딩 대 x : 바인딩
수색…
통사론
<object 속성 = "{x : 바인딩}"... />
<object property = "{x : Bind propertyPath}"... ...>
<object 속성 = "{x : 바인드 경로 = propertyPath}"... />
<object 속성 = "{x : 바인딩 [bindingProperties]}"... />
<object 속성 = "{x : Bind 속성 경로, [bindingProperties]}"... />
<object 속성 = "{x : 바인드 경로 = propertyPath, [bindingProperties]}"... />
비고
{x:Bind}
마크 업 확장 프로그램 (Windows 10의 새로운 기능)은 {Binding}
대신 사용할 수 있습니다.
{x:Bind}
의 일부 기능이 부족 {Binding}
하지만, 적은 시간과보다 적은 메모리에서 실행 {Binding}
더 나은 디버깅을 지원합니다.
XAML로드 시간에 {x:Bind}
는 바인딩 개체라고 생각할 수있는 것으로 변환되며이 개체는 데이터 소스의 속성에서 값을 가져옵니다. 바인딩 개체는 데이터 원본 속성 값의 변경 내용을 관찰하고 이러한 변경 내용을 기반으로 자체를 새로 고치도록 선택적으로 구성 할 수 있습니다. 또한 선택적으로 자체 값의 변경 사항을 소스 등록 정보로 푸시하도록 구성 할 수도 있습니다. {x:Bind}
및 {Binding}
의해 만들어진 바인딩 개체는 기능면에서 동등합니다. 그러나 {x:Bind}
는 컴파일시 생성되는 특수 목적 코드를 실행하고 {Binding}
은 범용 런타임 객체 검사를 사용합니다. 따라서 {x:Bind}
바인딩 (종종 컴파일 된 바인딩이라고도 함)은 뛰어난 성능을 제공하고 바인딩 표현식의 컴파일 타임 유효성 검사를 제공하며 부분적으로 생성 된 코드 파일에 중단 점을 설정할 수있게하여 디버깅을 지원합니다 귀하의 페이지에 대한 클래스. 이러한 파일은 obj 폴더에서 (C #의 경우) .g.cs와 같은 이름으로 찾을 수 있습니다.
자세한 내용 은 x : Bind에 대한 MSDN 설명서 를 참조하십시오 .
함수에서 {x : Bind} 평가하기
이 기능은 v1607 이후에 Bind 마크 업 확장에 추가되었습니다 (Redstone 1).
arg 경로와 상수 arg뿐만 아니라 함수 경로를 지정할 수 있습니다. 우리가 backcode에 정의 된 함수를 가지고 있다고 가정 해 봅시다 :
public string Translate(string text, string from, string to)
이제 bind를 사용하여 함수를 원하는 요소로 평가할 수 있습니다.
<TextBlock Name="SomeText" Text="How are you?" />
<TextBlock Name="{x:Bind Translate(SomeText.Text, 'en', 'es')}" />
함수와 arg 경로는 점과 캐스트를 포함 할 수 있습니다.