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)
Syntax
'Declaration
<GuidAttribute("C450D280-B38A-40C0-B5CF-743E8B6C9D88")> _
Public Interface VCCodeEnum
[GuidAttribute("C450D280-B38A-40C0-B5CF-743E8B6C9D88")]
public interface VCCodeEnum
[GuidAttribute(L"C450D280-B38A-40C0-B5CF-743E8B6C9D88")]
public interface class VCCodeEnum
[<GuidAttribute("C450D280-B38A-40C0-B5CF-743E8B6C9D88")>]
type VCCodeEnum = interface end
public interface VCCodeEnum
The VCCodeEnum type exposes the following members.
Properties
Name | Description | |
---|---|---|
Access | Gets or sets the access attributes of this item. | |
Attributes | Gets a collection of all of the attributes for the parent object. | |
Bases | Gets a collection of classes from which this item derives. | |
BodyText | Gets or sets the body text of the parent object. | |
Children | Gets a collection of objects contained within this code construct. | |
CodeModel | Gets the VCCodeModel for the project. | |
Collection | Gets the collection containing the object supporting this property or contained within this code construct. | |
Comment | Gets or sets the comment associated with the code element. | |
DeclarationText | Gets or sets the declaration of the parent object. | |
DerivedTypes | Gets a collection of objects derived from this object. | |
DisplayName | Gets the full name of the parent object. | |
DocComment | Gets or sets the document comment for the current code model element. | |
DTE | Gets the top-level extensibility object. | |
EndPoint | Gets the edit point that is the location of the end of the code item. | |
EndPointOf | Returns the end point of the parent object. | |
Extender | Gets the requested Extender object if it is available for this object. | |
ExtenderCATID | Gets the Extender category ID (CATID) for the object. | |
ExtenderNames | Gets a list of available Extenders for the object. | |
File | Gets the file in which the parent object is declared. | |
FullName | Gets the full path and name of the object's file. | |
InfoLocation | Describes the capabilities of the code model. | |
IsCaseSensitive | Gets a value indicating whether a code element is case-sensitive. | |
IsCodeType | Gets a value indicating whether a CodeType object can be obtained from this object. | |
IsDerivedFrom | Gets a value indicating whether an object has another object as a base. | |
IsInjected | Gets a value indicating whether a code element has been injected by an attribute or macro expansion. | |
IsManaged | Gets or sets a value indicating whether the parent object is managed. | |
IsReadOnly | Gets a value indicating whether the file containing the parent object is read-only. | |
IsValue | Gets or sets a value indicating whether the __value keyword is applied to the parent object. | |
IsZombie | Gets a value indicating whether the VCCodeEnum object exists. | |
Kind | Gets an enumeration indicating the type of object. | |
Language | Gets the programming language used to author the code. | |
Location | Gets the location of the object declaration. | |
Members | Gets a collection of items contained by this element. | |
Name | Gets or sets the name of the object. | |
Namespace | Gets an object defining the namespace. | |
Parent | Gets the immediate parent object of a VCCodeEnum object. | |
Picture | Gets a picture automation object to be used as an icon in the user interface. | |
Project | Gets the Project object associated with the object. | |
ProjectItem | Gets the ProjectItem object associated with the given object. | |
References | Not currently implemented. | |
StartPoint | Gets a TextPoint object that defines the beginning of the code item. | |
StartPointOf | Gets the start point of the parent object. |
Top
Methods
Name | Description | |
---|---|---|
AddAttribute | Creates a new attribute code construct and inserts the code in the correct location. | |
AddBase | Adds an item to the list of inherited objects. | |
AddMember | Creates a new member code construct and inserts the code in the correct location. | |
GetEndPoint | Gets a TextPoint object that marks the end of the code element definition. | |
GetStartPoint | Gets a TextPoint object that defines the beginning of the code element definition. | |
IsSelf | Determines if the specified code element is the same as the parent code element. | |
RemoveBase | Removes an object from the list of bases. | |
RemoveMember | Removes a member code construct. | |
ValidateMember | Validates that the proposed name is a valid C++ name for the kind given in the context of the parent object. |
Top
Remarks
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.
Examples
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