x:Code 내장 XAML 형식
XAML 프로덕션 내에서 코드를 배치할 수 있습니다. 이러한 코드는 XAML을 컴파일하는 모든 XAML 프로세서 구현에서 컴파일하거나 런타임의 해석과 같은 나중에 사용하기 위해 XAML 프로덕션에 남을 수 있습니다.
XAML 개체 요소 사용
<x:Code>
// code instructions, usually enclosed by CDATA...
</x:Code>
발언
x:Code
XAML 지시문 요소 내의 코드는 여전히 일반 XML 네임스페이스 및 제공된 XAML 네임스페이스 내에서 해석됩니다. 따라서 일반적으로 CDATA
세그먼트 내에서 x:Code
데 사용되는 코드를 묶을 필요가 있습니다.
XAML 프로덕션의 가능한 모든 배포 메커니즘에는 x:Code
허용되지 않습니다. 특정 프레임워크(예: WPF)에서 코드를 컴파일해야 합니다. 다른 프레임워크에서는 x:Code
사용이 일반적으로 허용되지 않을 수 있습니다.
관리되는 x:Code
콘텐츠를 허용하는 프레임워크의 경우 x:Code
콘텐츠에 사용할 올바른 언어 컴파일러는 애플리케이션을 컴파일하는 데 사용되는 포함 프로젝트의 설정 및 대상에 따라 결정됩니다.
WPF 사용 현황 정보
WPF에 대한 x:Code
내에 선언된 코드에는 몇 가지 주목할 만한 제한 사항이 있습니다.
x:Code
지시문 요소는 XAML 프로덕션의 루트 요소에 대한 직속 자식 요소여야 합니다.x:Class 지시문 부모 루트 요소에 제공해야 합니다.
x:Code
내에 배치된 코드는 컴파일을 통해 해당 XAML 페이지에 대해 이미 생성되고 있는 부분 클래스의 범위 내에서 처리됩니다. 따라서 정의한 모든 코드는 해당 partial 클래스의 멤버 또는 변수여야 합니다.부분 클래스 내에 클래스를 중첩하는 것 외에는 추가 클래스를 정의할 수 없습니다(중첩은 허용되지만 중첩된 클래스는 XAML에서 참조할 수 없기 때문에 일반적이지는 않음). 기존 partial 클래스에 사용되는 네임스페이스 이외의 CLR 네임스페이스는 정의하거나 추가할 수 없습니다.
PARTIAL 클래스 CLR 네임스페이스 외부의 코드 엔터티에 대한 참조는 모두 정규화되어야 합니다. 선언되는 멤버가 재정의 가능한 부분 클래스 멤버에 대한 재정의인 경우 언어별 재정의 키워드를 사용하여 지정해야 합니다.
x:Code
범위에서 선언된 멤버가 XAML에서 만든 partial 클래스의 멤버와 충돌하는 경우 컴파일러가 충돌을 보고하는 방식으로 XAML 파일은 컴파일하거나 로드할 수 없습니다.
참고 항목
- x:Class 지시문
- WPF
Code-Behind 및 XAML - XAML 개요(WPF .NET)
.NET Desktop feedback