CodeTypeDeclaration.IsPartial Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece un valor que indica si la declaración de tipos es completa o parcial.
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
Valor de propiedad
Es true
si la declaración de clase o de estructura es una representación parcial de la implementación; es false
si la declaración es una implementación completa de la clase o la estructura. De manera predeterminada, es false
.
Ejemplos
En este ejemplo se muestra el uso de para CodeTypeDeclaration proporcionar una implementación de clase en varias declaraciones. En el ejemplo se compila la instrucción de declaración de clase inicial y se establece la IsPartial propiedad true
en .
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)
Un método diferente en el ejemplo extiende la implementación de la clase. Este método crea una nueva instrucción de declaración de tipo para la clase existente y establece la IsPartial propiedad true
en . El compilador combina las dos declaraciones de tipo parciales para la implementación de clase completa.
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)
Comentarios
Puede crear una implementación de clase o estructura en una declaración completa o distribuir la implementación entre varias declaraciones. Las implementaciones se proporcionan normalmente en una declaración de tipo completa. En este caso, establezca la propiedad false
de declaración de tipo en IsPartial , que indica que la declaración de tipo representa todos los detalles de la implementación de la clase o estructura.
Una declaración de tipo parcial facilita la compilación de diferentes partes de una implementación de clase o estructura en distintos módulos de la aplicación. Las declaraciones de tipos parciales se pueden almacenar en un archivo de origen o distribuirse entre varios archivos de origen que finalmente se compilan conjuntamente para formar la implementación de tipo combinado.
El lenguaje C# admite declaraciones de tipos parciales de clases y estructuras a través de la partial
palabra clave . Visual Basic admite declaraciones de tipos parciales de clases y estructuras con la Partial
palabra clave . No todos los generadores de código admiten declaraciones de tipo parciales, por lo que debe probar esta compatibilidad llamando al Supports método con la marca PartialTypes.
Nota
Se admiten declaraciones de tipos parciales para clases y estructuras. Si especifica una declaración de tipo parcial para una enumeración o interfaz, el código generado genera errores del compilador.
Al proporcionar una implementación de clase o estructura en varias declaraciones, establezca la IsPartial propiedad true
en para la declaración inicial y todas las declaraciones complementarias. La declaración inicial debe especificar completamente la firma de tipo, incluidos los modificadores de acceso, los tipos heredados y las interfaces implementadas. Las declaraciones complementarias no necesitan volver a especificar la firma de tipo. Normalmente, un error del compilador se produce si se vuelve a definir la firma de tipo en una declaración complementaria.
Visual Studio 2005 usa tipos parciales para separar el código generado por el usuario del código del diseñador. En los proyectos de aplicación windows de Visual Basic, el código de usuario se coloca en una clase parcial que no está calificada por la Partial
palabra clave ; el código proporcionado por el diseñador aparece en la clase parcial que tiene la Partial
palabra clave . En C#, el código de usuario y el código del diseñador aparecen en clases parciales identificadas por la partial
palabra clave .