다음을 통해 공유


CodeTypeDeclaration.IsPartial 속성

정의

형식 선언이 완전한지 또는 부분적인지 여부를 나타내는 값을 가져오거나 설정합니다.

public:
 property bool IsPartial { bool get(); void set(bool value); };
public bool IsPartial { get; set; }
member this.IsPartial : bool with get, set
Public Property IsPartial As Boolean

속성 값

클래스 또는 구조체 선언이 부분적인 구현을 나타내면 true이고, 완전한 구현이면 false입니다. 기본값은 false입니다.

예제

이 예제에서는 를 사용하여 CodeTypeDeclaration 여러 선언에서 클래스 구현을 제공하는 방법을 보여 줍니다. 이 예제에서는 초기 클래스 선언 문을 빌드하고 속성을 trueIsPartial 설정합니다.

CodeTypeDeclaration^ baseClass = gcnew CodeTypeDeclaration( "DocumentProperties" );
baseClass->IsPartial = true;
baseClass->IsClass = true;
baseClass->Attributes = MemberAttributes::Public;
baseClass->BaseTypes->Add( gcnew CodeTypeReference( System::Object::typeid ) );

// Add the DocumentProperties class to the namespace.
sampleSpace->Types->Add( baseClass );
            CodeTypeDeclaration baseClass = new CodeTypeDeclaration("DocumentProperties");
            baseClass.IsPartial = true;
            baseClass.IsClass = true;
            baseClass.Attributes = MemberAttributes.Public;
            baseClass.BaseTypes.Add(new CodeTypeReference(typeof(System.Object
)));

            // Add the DocumentProperties class to the namespace.
            sampleSpace.Types.Add(baseClass);
Dim baseClass As CodeTypeDeclaration = New CodeTypeDeclaration("DocumentProperties")
baseClass.IsPartial = True
baseClass.IsClass = True
baseClass.Attributes = MemberAttributes.Public
baseClass.BaseTypes.Add(New CodeTypeReference(GetType(System.Object)))

' Add the DocumentProperties class to the namespace.
sampleSpace.Types.Add(baseClass)

예제의 다른 메서드는 클래스 구현을 확장합니다. 이 메서드는 기존 클래스에 대한 새 형식 선언 문을 빌드하고 속성을 trueIsPartial 설정합니다. 컴파일러는 전체 클래스 구현을 위해 두 개의 부분 형식 선언을 함께 결합합니다.

CodeTypeDeclaration^ baseClass = gcnew CodeTypeDeclaration( "DocumentProperties" );
baseClass->IsPartial = true;
baseClass->IsClass = true;
baseClass->Attributes = MemberAttributes::Public;

// Extend the DocumentProperties class in the unit namespace.
( *docPropUnit)->Namespaces[ 0 ]->Types->Add( baseClass );
CodeTypeDeclaration baseClass = new CodeTypeDeclaration("DocumentProperties");
baseClass.IsPartial = true;
baseClass.IsClass = true;
baseClass.Attributes = MemberAttributes.Public;

// Extend the DocumentProperties class in the unit namespace.
docPropUnit.Namespaces[0].Types.Add(baseClass);
Dim baseClass As CodeTypeDeclaration = New CodeTypeDeclaration("DocumentProperties")
baseClass.IsPartial = True
baseClass.IsClass = True
baseClass.Attributes = MemberAttributes.Public

' Extend the DocumentProperties class in the unit namespace.
docPropUnit.Namespaces(0).Types.Add(baseClass)

설명

하나의 완전한 선언에서 클래스 또는 구조체 구현을 빌드하거나 여러 선언에 구현을 분산할 수 있습니다. 구현은 일반적으로 하나의 완전한 형식 선언에서 제공됩니다. 이 경우 형식 선언 IsPartial 속성을 false로 설정하면 형식 선언이 클래스 또는 구조체 구현에 대한 모든 세부 정보를 나타낸다는 것을 나타냅니다.

부분 형식 선언을 쉽게 애플리케이션의 다른 모듈에서 클래스 또는 구조체 구현 다른 부분을 빌드할 수 있습니다. 부분 형식 선언은 하나의 원본 파일에 저장되거나 결국 함께 컴파일되어 결합된 형식 구현을 형성하는 여러 원본 파일에 분산될 수 있습니다.

C# 언어는 키워드(keyword) 통해 클래스 및 구조체의 부분 형식 선언을 partial 지원합니다. Visual Basic은 키워드(keyword) 사용하여 클래스 및 구조체의 부분 형식 선언을 Partial 지원합니다. 일부 코드 생성기는 부분 형식 선언을 지원하지 않으므로 플래그PartialTypes를 사용하여 메서드를 호출 Supports 하여 이 지원을 테스트해야 합니다.

참고

부분 형식 선언은 클래스 및 구조체에 대해 지원됩니다. 열거형 또는 인터페이스에 대해 부분 형식 선언을 지정하면 생성된 코드에서 컴파일러 오류가 발생합니다.

여러 선언에서 클래스 또는 구조체 구현을 제공할 때 초기 선언 및 모든 추가 선언에 대해 속성을 true 로 설정합니다IsPartial. 초기 선언은 액세스 한정자, 상속된 형식 및 구현된 인터페이스를 포함하여 형식 서명을 완전히 지정해야 합니다. 보조 선언은 형식 서명을 다시 지정할 필요가 없습니다. 컴파일러 오류는 일반적으로 보조 선언에서 형식 서명을 재정의하는 경우 발생합니다.

Visual Studio 2005는 부분 형식을 사용하여 사용자 생성 코드를 디자이너 코드와 분리합니다. Visual Basic Windows 애플리케이션 프로젝트의 경우 사용자 코드에서 정규화 되지 않은 partial 클래스에 배치 되는 Partial 키워드를 디자이너에서 제공 코드가 있는 partial 클래스에 표시는 Partial 키워드입니다. C#에서는 사용자 코드와 디자이너 코드가 모두 키워드(keyword) 식별된 부분 클래스에 partial 표시됩니다.

적용 대상

추가 정보