Поделиться через


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 предоставления реализации класса в нескольких объявлениях. В примере выполняется сборка начальной инструкции объявления класса и присвоение свойству IsPartial значения true.

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)

Другой метод в примере расширяет реализацию класса. Этот метод создает новую инструкцию объявления типа для существующего класса и задает свойству IsPartial значение true. Компилятор объединяет два разделяемых объявления типов для полной реализации класса.

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# поддерживает частичные объявления типов классов и структур с partial помощью ключевое слово. Visual Basic поддерживает частичные объявления типов классов и структур с Partial ключевое слово. Не все генераторы кода поддерживают объявления частичных типов, поэтому необходимо проверить эту поддержку, вызвав Supports метод с флагом PartialTypes.

Примечание

Частичные объявления типов поддерживаются для классов и структур. Если указать частичное объявление типа для перечисления или интерфейса, созданный код создает ошибки компилятора.

При предоставлении реализации класса или структуры в нескольких объявлениях присвойте свойству IsPartial значение true для начального объявления и всех дополнительных объявлений. Начальное объявление должно полностью указывать сигнатуру типа, включая модификаторы доступа, унаследованные типы и реализованные интерфейсы. В дополнительных объявлениях не нужно повторно указывать сигнатуру типа. Ошибка компилятора обычно возникает, если переопределить сигнатуру типа в дополнительном объявлении.

Visual Studio 2005 использует разделяемые типы, чтобы отделить созданный пользователем код от кода конструктора. В проектах приложений Visual Basic для Windows пользовательский код помещается в разделяемый класс, не соответствующий ключевое слово. Предоставленный конструктором Partial код отображается в разделяемом классе с Partial ключевое слово. В C# код пользователя и код конструктора отображаются в разделяемых классах, идентифицируемых partial ключевое слово.

Применяется к

См. также раздел