CodeMemberProperty 类

定义

表示某种类型的属性的声明。

public ref class CodeMemberProperty : System::CodeDom::CodeTypeMember
public class CodeMemberProperty : System.CodeDom.CodeTypeMember
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public class CodeMemberProperty : System.CodeDom.CodeTypeMember
type CodeMemberProperty = class
    inherit CodeTypeMember
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Serializable>]
type CodeMemberProperty = class
    inherit CodeTypeMember
Public Class CodeMemberProperty
Inherits CodeTypeMember
继承
CodeMemberProperty
属性

示例

以下示例代码演示如何使用 CodeMemberProperty 定义 string 具有 getset 访问器的属性。

// 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.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.
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

注解

CodeMemberProperty 可用于表示类型属性的声明。

属性 Type 指定 属性的数据类型。 属性 GetStatements 包含 属性的任何 get 语句方法。 属性 SetStatements 包含 属性的任何 set 语句方法。 属性 Parameters 指定属性的任何参数,例如索引器属性所需的参数。

构造函数

CodeMemberProperty()

初始化 CodeMemberProperty 类的新实例。

属性

Attributes

获取或设置成员的特性。

(继承自 CodeTypeMember)
Comments

获取类型成员的注释集合。

(继承自 CodeTypeMember)
CustomAttributes

获取或设置成员的自定义特性。

(继承自 CodeTypeMember)
EndDirectives

获取成员的结束指令。

(继承自 CodeTypeMember)
GetStatements

获取该属性的 get 语句的集合。

HasGet

获取或设置指示该属性是否具有 get 方法访问器的值。

HasSet

获取或设置指示该属性是否具有 set 方法访问器的值。

ImplementationTypes

获取该属性实现的任何接口的数据类型。

LinePragma

获取或设置类型成员语句所在的行。

(继承自 CodeTypeMember)
Name

获取或设置成员名。

(继承自 CodeTypeMember)
Parameters

获取该属性的声明表达式的集合。

PrivateImplementationType

获取或设置该属性(如果是私有的)实现的接口的数据类型(如果有)。

SetStatements

获取该属性的 set 语句的集合。

StartDirectives

获取成员的开始指令。

(继承自 CodeTypeMember)
Type

获取或设置属性的数据类型。

UserData

获取当前对象的用户可定义数据。

(继承自 CodeObject)

方法

Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetType()

获取当前实例的 Type

(继承自 Object)
MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
ToString()

返回表示当前对象的字符串。

(继承自 Object)

适用于