다음을 통해 공유


x:Class 지시문

태그와 코드 숨김 간에 부분 클래스를 조인하도록 XAML 태그 컴파일을 구성합니다. 코드 부분 클래스는 CLS(공용 언어 사양) 언어의 별도 코드 파일에 정의되는 반면 태그 부분 클래스는 일반적으로 XAML 컴파일 중에 코드 생성에 의해 생성됩니다.

XAML 특성 사용

<object x:Class="namespace.classname"...>
  ...
</object>

XAML 값

묘사
namespace 선택적. classname식별되는 partial 클래스를 포함하는 CLR 네임스페이스를 지정합니다. namespace 지정한 경우 점(.)은 namespace 구분하고 classname. 비고를 참조하세요.
classname 필수. 로드된 XAML과 해당 XAML에 대한 코드 숨김을 연결하는 partial 클래스의 CLR 이름을 지정합니다.

종속성

x:Class XAML 프로덕션의 루트 요소에만 지정할 수 있습니다. x:Class XAML 프로덕션에 부모가 있는 모든 개체에서 유효하지 않습니다. 자세한 내용은 [MS-XAML] 섹션 6.3.1.6참조하세요.

발언

namespace 값에는 관련 네임스페이스를 .NET 프로그래밍의 일반적인 기술인 이름 계층 구조로 구성하는 추가 점이 포함될 수 있습니다. x:Class 값 문자열의 마지막 점만 namespace 구분하고 classname.x:Class 사용되는 클래스는 중첩 클래스가 될 수 없습니다. 중첩 클래스가 허용되는 경우 x:Class 문자열에 대한 점의 의미를 결정하는 것이 모호하기 때문에 중첩 클래스는 허용되지 않습니다.

x:Class사용하는 기존 프로그래밍 모델에서 x:Class 코드 숨김이 없는 XAML 페이지가 있는 것이 전적으로 유효하다는 점에서 선택 사항입니다. 그러나 이 기능은 XAML을 사용하는 프레임워크에서 구현하는 빌드 작업과 상호 작용합니다. x:Class 기능은 애플리케이션 모델 및 해당 빌드 작업에서 XAML 지정 콘텐츠의 다양한 분류가 갖는 역할의 영향을 받습니다. XAML이 이벤트 처리 특성 값을 선언하거나 정의 클래스가 코드 숨김 클래스에 있는 사용자 지정 요소를 인스턴스화하는 경우 코드 숨김에 적합한 클래스에 x:Class 지시문 참조(또는 x:Subclass)를 제공해야 합니다.

x:Class 지시문의 값은 클래스의 정규화된 이름을 지정하지만 어셈블리 정보(Type.FullName해당)가 없는 문자열이어야 합니다. 간단한 애플리케이션의 경우 코드 숨김이 이러한 방식으로 구조화된 경우 CLR 네임스페이스 정보를 생략할 수 있습니다(코드 정의는 클래스 수준에서 시작됨).

페이지 또는 애플리케이션 정의에 대한 코드 숨김 파일은 컴파일된 애플리케이션을 생성하고 태그 컴파일을 포함하는 프로젝트의 일부로 포함된 코드 파일 내에 있어야 합니다. CLR 클래스에 대한 이름 규칙을 따라야 합니다. 자세한 내용은 Framework 디자인 지침참조하세요. 기본적으로 코드 숨김 클래스는 ; 그러나 x:ClassModifier 지시문사용하여 다른 액세스 수준에서 정의할 수 있습니다.

x:Class 특성 해석은 CLR 기반 XAML 구현, 특히 .NET XAML 서비스에만 적용됩니다. CLR을 기반으로 하지 않고 .NET XAML 서비스를 사용하지 않는 다른 XAML 구현은 XAML 태그 연결 및 런타임 코드 백업에 다른 해상도 수식을 사용할 수 있습니다. x:Class대한 일반적인 해석에 대한 자세한 내용은 [MS-XAML]참조하세요.

특정 수준의 아키텍처에서 x:Class 의미는 .NET XAML 서비스에서 정의되지 않습니다. .NET XAML Services가 XAML 태그 및 백업 코드가 연결된 프로그래밍 모델을 지정하지 않기 때문입니다. 프로그래밍 모델 또는 애플리케이션 모델을 사용하여 XAML 태그 및 CLR 기반 코드 숨김을 연결하는 방법을 정의하는 특정 프레임워크에서 x:Class 지시문을 추가로 사용할 수 있습니다. 각 프레임워크에는 빌드 환경에 포함되어야 하는 일부 동작 또는 특정 구성 요소를 사용하도록 설정하는 자체 빌드 작업이 있을 수 있습니다. 프레임워크 내에서 빌드 작업은 코드 숨김에 사용되는 특정 CLR 언어에 따라 달라질 수도 있습니다.

WPF 프로그래밍 모델의 x:Class

WPF 애플리케이션 및 WPF 애플리케이션 모델에서 x:Class XAML 파일의 루트이고 컴파일되는 요소(XAML이 Page 빌드 동작이 있는 WPF 애플리케이션 프로젝트에 포함됨) 또는 컴파일된 WPF 애플리케이션의 애플리케이션 정의에 있는 Application 루트에 대한 특성으로 선언할 수 있습니다. 페이지 루트 또는 애플리케이션 루트가 아닌 요소 또는 컴파일되지 않은 WPF XAML 파일에서 x:Class 선언하면 .NET Framework 3.0 및 .NET Framework 3.5 WPF XAML 컴파일러에서 컴파일 시간 오류가 발생합니다. WPF에서 처리의 다른 측면에 대한 자세한 내용은 WPFCode-Behind 및 XAML을 참조하세요.

x:Class for Windows Workflow Foundation

Windows Workflow Foundation의 경우 x:Class XAML로 완전히 구성된 사용자 지정 활동의 클래스 이름을 지정하거나 코드 숨김이 있는 활동 디자이너에 대한 XAML 페이지의 부분 클래스 이름을 지정합니다.

Silverlight 사용 현황 정보

Silverlight에 대한 x:Class 별도로 문서화됩니다. 자세한 내용은 XAML 네임스페이스(x:) 언어 기능(Silverlight)참조하세요.

참고 항목