Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Definiert Bezeichner für Memberattribute von Klassenmembern.
Namespace: System.CodeDom
Assembly: System (in system.dll)
Syntax
'Declaration
<SerializableAttribute> _
<ComVisibleAttribute(True)> _
Public Enumeration MemberAttributes
'Usage
Dim instance As MemberAttributes
[SerializableAttribute]
[ComVisibleAttribute(true)]
public enum MemberAttributes
[SerializableAttribute]
[ComVisibleAttribute(true)]
public enum class MemberAttributes
/** @attribute SerializableAttribute() */
/** @attribute ComVisibleAttribute(true) */
public enum MemberAttributes
SerializableAttribute
ComVisibleAttribute(true)
public enum MemberAttributes
Member
| Membername | Beschreibung | |
|---|---|---|
| Abstract | Ein abstrakter Member. | |
| AccessMask | Eine Zugriffsmaske. | |
| Assembly | Ein Member, auf den alle Klassen in der gleichen Assembly zugreifen können. | |
| Const | Ein konstanter Member. | |
| Family | Ein Member, auf den aus der Familie seiner Klasse und abgeleiteter Klassen zugegriffen werden kann. | |
| FamilyAndAssembly | Ein Member, auf den aus seiner Klasse und aus abgeleiteten Klassen in der gleichen Assembly zugegriffen werden kann. | |
| FamilyOrAssembly | Ein Member, auf den aus seiner Klasse, aus abgeleiteten Klassen in einer beliebigen Assembly und aus allen Klassen in der gleichen Assembly zugegriffen werden kann. | |
| Final | Ein Member, der in einer abgeleiteten Klasse nicht überschrieben werden kann. | |
| New | Ein new-Member. | |
| Overloaded | Ein überladener Member. Bei einigen Sprachen wie Visual Basic müssen überladene Member explizit angegeben werden. | |
| Override | Ein Member, der einen Basisklassenmember überschreibt. | |
| Private | Ein private-Member. | |
| Public | Ein public-Member. | |
| ScopeMask | Eine Gültigkeitsbereichsmaske. | |
| Static | Ein statischer Member. Dies entspricht dem Shared-Schlüsselwort in Visual Basic. | |
| VTableMask | Eine VTable-Maske. |
Hinweise
Mit den in der MemberAttributes-Enumeration definierten Bezeichnern können der Gültigkeitsbereich und die Zugriffsattribute eines Klassenmembers angegeben werden.
Beispiel
Im folgenden Beispielcode wird veranschaulicht, wie mit einer CodeMemberProperty eine string-Eigenschaft mit get- und set-Accessoren definiert wird.
' Declares a property of type String named StringProperty.
Dim property1 As New CodeMemberProperty()
property1.Name = "StringProperty"
property1.Type = New CodeTypeReference("System.String")
property1.Attributes = MemberAttributes.Public
property1.GetStatements.Add(New CodeMethodReturnStatement(New CodeFieldReferenceExpression(New CodeThisReferenceExpression(), "testStringField")))
property1.SetStatements.Add(New CodeAssignStatement(New CodeFieldReferenceExpression(New CodeThisReferenceExpression(), "testStringField"), New CodePropertySetValueReferenceExpression()))
' A Visual Basic code generator produces the following source code for the preceeding example code:
' Public Overridable Property StringProperty() As String
' Get
' Return Me.testStringField
' End Get
' Set(ByVal Value As String)
' Me.testStringField = value
' End Set
' End Property
// Declares a property of type String named StringProperty.
CodeMemberProperty property1 = new CodeMemberProperty();
property1.Name = "StringProperty";
property1.Type = new CodeTypeReference("System.String");
property1.Attributes = MemberAttributes.Public;
property1.GetStatements.Add( new CodeMethodReturnStatement( new CodeFieldReferenceExpression(new CodeThisReferenceExpression(), "testStringField") ) );
property1.SetStatements.Add( new CodeAssignStatement( new CodeFieldReferenceExpression(new CodeThisReferenceExpression(), "testStringField"), new CodePropertySetValueReferenceExpression()));
// A C# code generator produces the following source code for the preceeding example code:
// public virtual string StringProperty
// {
// get
// {
// return this.testStringField;
// }
// set
// {
// this.testStringField = value;
// }
// }
// Declares a property of type String named StringProperty.
CodeMemberProperty^ property1 = gcnew CodeMemberProperty;
property1->Name = "StringProperty";
property1->Type = gcnew CodeTypeReference( "System.String" );
property1->Attributes = MemberAttributes::Public;
property1->GetStatements->Add( gcnew CodeMethodReturnStatement( gcnew CodeFieldReferenceExpression( gcnew CodeThisReferenceExpression,"testStringField" ) ) );
property1->SetStatements->Add( gcnew CodeAssignStatement( gcnew CodeFieldReferenceExpression( gcnew CodeThisReferenceExpression,"testStringField" ),gcnew CodePropertySetValueReferenceExpression ) );
// A C# code generator produces the following source code for the preceeding example code:
// public virtual string StringProperty
// {
// get
// {
// return this.testStringField;
// }
// set
// {
// this.testStringField = value;
// }
// }
// Declares a property of type String named StringProperty.
CodeMemberProperty property1 = new CodeMemberProperty();
property1.set_Name("StringProperty");
property1.set_Type(new CodeTypeReference("System.String"));
property1.set_Attributes(MemberAttributes.Public);
property1.get_GetStatements().Add(new CodeMethodReturnStatement(new
CodeFieldReferenceExpression(new CodeThisReferenceExpression(),
"testStringField")));
property1.get_SetStatements().Add(new CodeAssignStatement(new
CodeFieldReferenceExpression(new CodeThisReferenceExpression(),
"testStringField"), new CodePropertySetValueReferenceExpression()));
// /** @property
// */
// public String get_StringProperty()
// {
// return this.get_testStringField();
// } //get_StringProperty
//
// /** @property
// */
// public void set_StringProperty (String value )
// {
// this.set_testStringField(value);
// } //set_StringProperty
Plattformen
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
Siehe auch
Referenz
System.CodeDom-Namespace
CodeTypeMember-Klasse
CodeMemberProperty-Klasse
CodeMemberMethod-Klasse
CodeConstructor-Klasse