This topic has not yet been rated - Rate this topic

CodeMemberProperty Class

Represents a declaration for a property of a type.

System.Object
  System.CodeDom.CodeObject
    System.CodeDom.CodeTypeMember
      System.CodeDom.CodeMemberProperty

Namespace:  System.CodeDom
Assembly:  System (in System.dll)
[SerializableAttribute]
[ComVisibleAttribute(true)]
[ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch)]
public class CodeMemberProperty : CodeTypeMember

The CodeMemberProperty type exposes the following members.

  Name Description
Public method CodeMemberProperty Initializes a new instance of the CodeMemberProperty class.
Top
  Name Description
Public property Attributes Gets or sets the attributes of the member. (Inherited from CodeTypeMember.)
Public property Comments Gets the collection of comments for the type member. (Inherited from CodeTypeMember.)
Public property CustomAttributes Gets or sets the custom attributes of the member. (Inherited from CodeTypeMember.)
Public property EndDirectives Gets the end directives for the member. (Inherited from CodeTypeMember.)
Public property GetStatements Gets the collection of get statements for the property.
Public property HasGet Gets or sets a value indicating whether the property has a get method accessor.
Public property HasSet Gets or sets a value indicating whether the property has a set method accessor.
Public property ImplementationTypes Gets the data types of any interfaces that the property implements.
Public property LinePragma Gets or sets the line on which the type member statement occurs. (Inherited from CodeTypeMember.)
Public property Name Gets or sets the name of the member. (Inherited from CodeTypeMember.)
Public property Parameters Gets the collection of declaration expressions for the property.
Public property PrivateImplementationType Gets or sets the data type of the interface, if any, this property, if private, implements.
Public property SetStatements Gets the collection of set statements for the property.
Public property StartDirectives Gets the start directives for the member. (Inherited from CodeTypeMember.)
Public property Type Gets or sets the data type of the property.
Public property UserData Gets the user-definable data for the current object. (Inherited from CodeObject.)
Top
  Name Description
Public method Equals(Object) Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected method Finalize Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method GetHashCode Serves as a hash function for a particular type. (Inherited from Object.)
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Protected method MemberwiseClone Creates a shallow copy of the current Object. (Inherited from Object.)
Public method ToString Returns a string that represents the current object. (Inherited from Object.)
Top

CodeMemberProperty can be used to represent the declaration for a property of a type.

The Type property specifies the data type of the property. The GetStatements property contains any get statement methods for the property. The SetStatements property contains any set statement methods for the property. The Parameters property specifies any parameters for the property, such as are required for an indexer property.

The following example code demonstrates use of a CodeMemberProperty to define a string property with get and set accessors.


// 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;
//            }
//       }            


.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Did you find this helpful?
(1500 characters remaining)
Community Content Add
Annotations FAQ