Export (0) Print
Expand All

VCCodeEnum Interface

An object representing an enumeration code element in the source code of a solution.

Namespace:  Microsoft.VisualStudio.VCCodeModel
Assembly:  Microsoft.VisualStudio.VCCodeModel (in Microsoft.VisualStudio.VCCodeModel.dll)

[GuidAttribute("661A36DC-B9C8-4C0D-B481-F9D9D8305DA0")]
public interface VCCodeEnum

The VCCodeEnum type exposes the following members.

  NameDescription
Public propertyAccessGets or sets the access attributes of this item.
Public propertyAttributesGets a collection of all of the attributes for the parent object.
Public propertyBasesGets a collection of classes from which this item derives.
Public propertyBodyTextGets or sets the body text of the parent object.
Public propertyChildrenGets a collection of objects contained within this code construct.
Public propertyCodeModelGets the VCCodeModel for the project.
Public propertyCollectionGets the collection containing the object supporting this property or contained within this code construct.
Public propertyCommentGets or sets the comment associated with the code element.
Public propertyDeclarationTextGets or sets the declaration of the parent object.
Public propertyDerivedTypesGets a collection of objects derived from this object.
Public propertyDisplayNameGets the full name of the parent object.
Public propertyDocCommentGets or sets the document comment for the current code model element.
Public propertyDTEGets the top-level extensibility object.
Public propertyEndPointGets the edit point that is the location of the end of the code item.
Public propertyEndPointOfReturns the end point of the parent object.
Public propertyExtenderGets the requested Extender object if it is available for this object.
Public propertyExtenderCATIDGets the Extender category ID (CATID) for the object.
Public propertyExtenderNamesGets a list of available Extenders for the object.
Public propertyFileGets the file in which the parent object is declared.
Public propertyFullNameGets the full path and name of the object's file.
Public propertyInfoLocationDescribes the capabilities of the code model.
Public propertyIsCaseSensitiveGets a value indicating whether a code element is case-sensitive.
Public propertyIsCodeTypeGets a value indicating whether a CodeType object can be obtained from this object.
Public propertyIsDerivedFromGets a value indicating whether an object has another object as a base.
Public propertyIsInjectedGets a value indicating whether a code element has been injected by an attribute or macro expansion.
Public propertyIsManagedGets or sets a value indicating whether the parent object is managed.
Public propertyIsReadOnlyGets a value indicating whether the file containing the parent object is read-only.
Public propertyIsValueGets or sets a value indicating whether the __value keyword is applied to the parent object.
Public propertyIsZombieGets a value indicating whether the VCCodeEnum object exists.
Public propertyKindGets an enumeration indicating the type of object.
Public propertyLanguageGets the programming language used to author the code.
Public propertyLocationGets the location of the object declaration.
Public propertyMembersGets a collection of items contained by this element.
Public propertyNameGets or sets the name of the object.
Public propertyNamespaceGets an object defining the namespace.
Public propertyParentGets the immediate parent object of a VCCodeEnum object.
Public propertyPictureGets a picture automation object to be used as an icon in the user interface.
Public propertyProjectGets the Project object associated with the object.
Public propertyProjectItemGets the ProjectItem object associated with the given object.
Public propertyReferencesNot currently implemented.
Public propertyStartPointGets a TextPoint object that defines the beginning of the code item.
Public propertyStartPointOfGets the start point of the parent object.
Top

  NameDescription
Public methodAddAttributeCreates a new attribute code construct and inserts the code in the correct location.
Public methodAddBaseAdds an item to the list of inherited objects.
Public methodAddMemberCreates a new member code construct and inserts the code in the correct location.
Public methodGetEndPointGets a TextPoint object that marks the end of the code element definition.
Public methodGetStartPointGets a TextPoint object that defines the beginning of the code element definition.
Public methodIsSelfDetermines if the specified code element is the same as the parent code element.
Public methodRemoveBaseRemoves an object from the list of bases.
Public methodRemoveMemberRemoves a member code construct.
Public methodValidateMemberValidates that the proposed name is a valid C++ name for the kind given in the context of the parent object.
Public methodValidateMemberName
Top

A large part of the functionality of this object is provided by the Visual Studio CodeEnum object.

See How to: Compile Example Code for Visual C++ Code Model Extensibility for information on how to compile and run this sample.

This example displays the variables used by the first enumeration of the CAboutDlg class. It assumes a CAboutDlg class exists and has enumerations.

Sub GetEnums()
    Dim vcCM As VCCodeModel
    Dim vcEnum As VCCodeEnum
    Dim vcVariable As VCCodeVariable
    vcCM = DTE.Solution.Item(1).CodeModel
    vcEnum = vcCM.Classes.Item("CAboutDlg").Enums.Item(1)
    For Each vcVariable In vcEnum.Members
        MsgBox(vcVariable.DisplayName)
    Next
End Sub
Show:
© 2014 Microsoft