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
ключевое слово.