VCCodeBase Interface

An object providing access to the base class list of the parent object.

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

public interface VCCodeBase

The VCCodeBase type exposes the following members.

Public propertyAccessSets or gets the access attributes of this item.
Public propertyChildrenGets a collection of objects contained within this code construct.
Public propertyClassGets the base class or the actual base class declaration of the parent object.
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 propertyDisplayNameGets the full name of the parent object.
Public propertyDTEGets the top-level extensibility object.
Public propertyEndPointGets the text point that is the location of the end of the code item.
Public propertyEndPointOfReturns the end point of the parent object.
Public propertyExtenderReturns 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 this VCCodeBase is contained.
Public propertyFullNameGets the full path and name of the object's file.
Public propertyInfoLocationGets the capabilities of the code model.
Public propertyIsCaseSensitiveGets whether a code element is case-sensitive.
Public propertyIsCodeTypeGets a value indicating whether a CodeType object can be obtained from this object.
Public propertyIsInjectedGets whether a code element has been injected by an attribute or macro expansion.
Public propertyIsReadOnlyGets whether the file containing the parent object is read-only.
Public propertyIsVirtualSets or gets whether the parent object is virtual.
Public propertyIsZombieGets whether the VCCodeBase object exists.
Public propertyKindReturns an enumeration indicating the type of object.
Public propertyLanguageFor code model objects, returns the programming language used to author the code.
Public propertyLocationReturns the location of the parent object declaration.
Public propertyNameGets or sets the name of the object.
Public propertyParentGets the immediate parent object of a given object.
Public propertyPictureGets a picture automation object to be used as an icon in the user interface.
Public propertyProjectGets the Project associated with the object.
Public propertyProjectItemGets the ProjectItem 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.

Public methodGetEndPointReturns a TextPoint object that marks the end of the code element definition.
Public methodGetStartPointReturns 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.

The VCCodeBase object provides access to the code element representing the base class list for the parent object, if it exists. You can use this object to retrieve the base class or classes that exist for the parent object.


This does not represent the actual base class code element. It simply represents the base class names for the parent 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 base classes for each class in the current project.

    Sub GetBases()
        Dim vcCM As VCCodeModel
        Dim vcClass As VCCodeClass
        Dim vcBase As VCCodeBase
        Dim i As Integer
        vcCM = DTE.Solution.Item(1).CodeModel
        For Each vcClass In vcCM.Classes
            For i = 1 To vcClass.Bases.Count
                vcBase = vcClass.Bases.Item(1)
                MsgBox(vcClass.Name + " derives from " + vcBase.Name)
    End Sub

Community Additions