VsHierarchyPropID Enumeration

Specifies the property identifiers associated with the property settings for a hierarchy.

Namespace:  Microsoft.VisualStudio.Shell
Assembly:  Microsoft.VisualStudio.Shell.11.0 (in Microsoft.VisualStudio.Shell.11.0.dll)

Syntax

'Declaration
Public Enumeration VsHierarchyPropID
public enum VsHierarchyPropID
public enum class VsHierarchyPropID
type VsHierarchyPropID
public enum VsHierarchyPropID

Members

Member name Description
AddItemTemplatesGuid An optional alternative project type GUID to use to get add item templates.
AllowEditInRunMode Indicates whether the compiler allows edits during run mode. This property is optional.

If false or E_NOTIMPL, the compiler disallows edits during run mode (which is the most commonly expected behavior). If true, the compiler allows edits. This property enables Visual Studio for Applications scenarios.

AltHierarchy An IVsHierarchy for SVsTrackSelectionEx. This property is optional
AltItemid An item identifier for SVsTrackSelectionEx. This property is optional.
AlwaysBuildOnDebugLaunch Indicates whether your project always builds on debug launch (F5) when the “Only build startup projects and dependencies on Run” Tools option is set. This property is optional.

Set this property to true in your project hierarchy if you want your project to always build on debug launch in this case. This ensures that your project is built even if your project is not declared as a build dependency of the startup project. This property is a workaround for the fact that currently there is only support for build dependencies (IVsBuildDependency) and not deploy dependencies in the solution build manager. This property will be used rarely in circumstances where you may have a circular set of dependencies involving a combination of build and deploy dependencies between multiple projects (for example, A has a build dependency on B while B has a deploy dependency on A; if B is the startup project, then solution build manager would not realize it needs to build A to satisfy the required deploy dependency when the above mentioned Tools option is set).

AppContainer Indicates whether the project's output requires running in an app container or not. This property is optional. If true, the project’s output requires running in an app container. If false, the output des not require running in an app container.
AppTitleBarTopHierarchyName The hierarchy’s topmost name (solution or server) to put into the title bar of the application. This property is optional.
BrowseObject An IDispatch for property browsing. This property is optional.
BrowseObjectCATID An intrinsic extender category identifier (CATID) GUID of the BrowseObject for the given IVsHierarchy item identifier. For VSITEMID_ROOT, this corresponds to the object used to build the “Project.Properties” collection. This property is optional.
BuildDependencies A semicolon-separated list of projects required to build this project. This property is optional.

If this property is not implemented, EnumDependencies is used.

CanBuildFromMemory Indicates if a build can be done from memory. This property is optional.

If true, no prompt to save is required before building.

Caption The full window caption.
CategoryGuid The GUID to identify the family/category of this non-Solution based Hierarchy (for example, Portfolio Project Hierarchy).
CfgBrowseObjectCATID An intrinsic extender category identifier (CATID) GUID of the configuration BrowseObject for the given IVsHierarchy item identifier. This property is optional.
CfgPropertyPagesCLSIDList A semicolon delimited list of class identifiers (CLSID) of the configuration-dependent property pages. This property is optional.
ChildrenEnumerated Indicates if children have been enumerated. This property is optional.

If true children have been enumerated. Typically, this is only of interest for projects where enumerating children can be expensive (that is, Web projects).

CmdUIGuid A GUID used to control visibility of toolbars and AutoVisible tool windows.
ConfigurationProvider Obsolete. Use the IVsGetCfgProvider interface instead.
Container Indicates if the item is a container. This property is optional.

If true, the item is a container (it may not be expandable, but it contains items).

DebuggeeProcessId The process identifier of debuggee (if known), otherwise zero.
DebuggerSourcePaths A semi-colon delimited list of paths in which the debugger looks for source. This property is optional.
DefaultEnableBuildProjectCfg Indicates whether "Build" should be initially checked by default in the solution configuration. This property is optional.

Normally "Build" is checked by default if the project supports IVsBuildableProjectCfg.

DefaultEnableDeployProjectCfg Indicates whether "Deploy" should be initially checked by default in the solution configuration. This property is optional.

Normally "Deploy" is checked by default if the project supports IVsDeployableProjectCfg.

DefaultNamespace A string representing the items folder-based namespace. This property is optional.

The format of the string is "rootnamespace.folder.subfolder".

DemandLoadDependencies Indicates the demand load dependencies. This property is optional.

If true (default) and the project was loaded synchronously, all its dependencies are also loaded synchronously. If false and the project was loaded synchronously, those of its dependencies that support asynchronous load may be loaded asynchronously.

DescriptiveName A more descriptive name of the item. Replaces the running document table moniker in document windows tooltips or other parts of the UI. This property is optional.
DesignerFunctionVisibility The property that contains how designer functions are marked.

The value of this property is derived from VSDESIGNER_FUNCTIONVISIBILITY.

DesignerHiddenCodeGeneration The code that is supposed to go to the hidden designer file.

This property contains bit flag values from __VSDESIGNER_HIDDENCODEGENERATION.

DesignerVariableNaming The case with which the variables are generated. This property is optional.

The value of this property derives from the VSDESIGNER_VARIABLENAMING enumeration.

DesignTimeDependencies A semicolon-separated list of projects required to support design time features (Intellisense, Form designers, and so on). This property is optional.

If this property is not implemented, GetProperty(VSHPROPID_BuildDependencies) will be used instead.

DisableApplicationSettings Indicates whether Application Settings design time support in your project should be disabled. This property is optional.

If true in your hierarchy, Application Settings design time support in your project is disabled.

EditLabel A string to be displayed for the in-place editing node caption. This property is optional.
EnableDataSourceWindow Indicates whether the Data Source Window for this project should be disabled. This property is optional.

If true in your hierarchy, the Data Source Window is disabled.

ExcludeFromExportItemTemplate Indicates if the project item can be exported using the export item template. This property is optional.

If true, the project item cannot be exported. If false (default), the project item can be exported.

Expandable Indicates if the Shell displays the “open-this-folder” plus sign.

If true, the plus sign is displayed. If false, the plus sign is not displayed.

ExpandByDefault Indicates if the Shell should expand this item.

If true, the item should be expanded. If false, the item should not be expanded.

Expanded Indicates if the node is currently expanded in the UIHierarchyWindow.

If true, the node is currently expanded. If false, the node is not expanded. If this property starts as false, the UIHierarchyWindow will update.

ExternalItem Indicates if this item is to be considered external to the solution. This property is optional.

If true, the item is considered external. If false, the item is not considered external.

ExtObject The ext.object for the ITEMID_ROOT item identifier of the project (Project). For other item identifiers, this property contains that item's ext object (ProjectItem), if any. This property is optional.
ExtObjectCATID The intrinsic extender category identifier (CATID) GUID of the ExtObject (Automation Object) for the given IVsHierarchy item identifier. For VSITEMID_ROOT this corresponds to the type of the “Project” object. This property is optional.
ExtSelectedItem A custom SelectedItem object for the given item identifier. This property is optional.

If not supported, then a default implementation is provided.

FaultMessage A localized message indicating the reason for a faulted project. This property is optional.

This string is used in the fault resolution UI.

FirstChild The item identifier of the first child node (ITEMID_NIL if there are no children).
FirstVisibleChild Similar to FirstChild but the property specified by this member only walks items to be displayed in the UIHierarchyWindow. This property is optional. However, this property is required if the hierarchy supports multiple (subset or superset) views of its contents.
HandlesOwnReload Indicates if the project handles its own unload and reload. This property is optional.

If true, the project handles its own unload and reload. If false (default), the environment handles the unload and reload.

HasEnumerationSideEffects Indicates if this hierarchy is to be enumerated for Find In Files and similar hierarchy enumerations. This property is optional.

If true, then this hierarchy will not be enumerated (this is useful if enumerating might cause a login dialog or is unacceptably slow). If false, then this hierarchy will be enumerated.

IconHandle A handle of an icon; UIHierarchyWindow does not call DestroyIcon on it.

Your hierarchy should support IconHandle or IconImgList/ IconIndex, but not both.

IconImgList A handle to an image list for an icon. Use only when itemid==VSITEMID_ROOT).
IconIndex An index for an icon.

If Expandable is true, then IconIndex+1 is used for the open icon.

ImplantHierarchy The IVsHierarchy implant for this hierarchy. This property is optional.

Hold the implant as an UNADDREF ptr in SetProperty. The implant can implement IVsFilterAddProjectItemDlg and/or IVsToolboxUser.

IntellisenseUnknown The IUnknown of the Intellisense compiler used by the project system. This property is optional.
IsFaulted Indicates if the project has encountered an error. This property is optional.

For project hierarchies, set this property to true to indicate that the project has encountered an error. Implementations should raise property change events to all IVsHierarchyEvents sinks whenever this value changes.

IsFindInFilesForegroundOnly Indicates where Find In Files runs. This property is optional.

If true, Find In Files runs in the main thread.

IsHiddenItem Indicates if the item is not displayed in the current UIHierarchyWindow view. This property is optional. However, this property is required if your hierarchy supports multiple (subsetted) views of its contents.

If true, the item is not displayed.

IsLinkFile true if the file is a link file. This property is optional.
IsNewUnsavedItem Indicates if this is a new unsaved item. This property is optional.

If true, this is a new unsaved item (as obtained from File.New.File).

IsNonLocalStorage Indicates if project storage is local. This property is optional.

If true, project storage is local. IPersistFileFormat is used for saving a project regardless of whether it is a local "file" or not.

IsNonMemberItem Indicates if an item is not considered a member of the hierarchy. This property is optional. However, it is required if your hierarchy supports superset views of its contents (for example, ShowAllFiles displaying files in a directory that are not members of the project).

If true, the item is not considered a member of the hierarchy.

IsNonSearchable Indicates if an item can be searched for or replaced using Find in Files or Replace in Files. This property is optional.

If true, the item cannot be searched for or replaced. This property should be true for the project file.

IsUpgradeRequired Indicates if an upgrade is required. This property is optional.

If true, the item or any of its children are either already in the process of upgrading or must be upgraded.

ItemDocCookie The document cookie (VSCOOKIE) of the hierarchy item. This property is optional.
ItemSubType A non-localized string representing the subtype of the item. This property is optional.

It is up to each package to agree on the meaning of this string.

KeepAliveDocument Indicates if the document should be kept alive in the project regardless of its opened or closed state. This property is optional.

If true, the document should be kept alive.

MinimumDesignTimeCompatVersion The minimum design time compatible version with which this project is compatible. This property is optional.

The value of this property is mostly set by the IVsAppCompat service during the addition of a new feature in the project that would break compatibility with a previous version of the application.

Name The name for the project (VSITEMID_ROOT) or item.
NextSibling The item identifier of the next sibling node (ITEMID_NIL if there are no more siblings).
NextVisibleSibling Similar to NextSibling but the property specified by this member only walks items to be displayed in UIHierarchyWindow. This property is optional. However, this property is required if your hierarchy supports multiple (subset or superset) views of its contents.
NIL
NoDefaultNestedHierSorting Indicates if the hierarchy does not want nested hierarchies sorted first and items after, and sorted alphabetically (like solution folders). This property is optional.

If true, the hierarchy does not want nested hierarchies sorted first and items after, and sorted alphabetically.

OpenFolderIconHandle The handle of an icon for an open folder; UIHierarchyWindow does not call DestroyIcon on it. This property is optional.
OpenFolderIconIndex The open folder’s icon index. This property is optional.
OutputType The output type for a project. This property is optional.

The value of this property derives from the __VSPROJOUTPUTTYPE enumeration.

OverlayIconIndex The overlay for the item's main icon. This property is optional.

The value of this property derives from the VSOVERLAYICON enumeration.

OwnerKey The owner key string that identifies the project GUID of the owning project. This property is optional.

Only projects that implement IVsOwnedProjectFactory should support SetProperty for this property.

Parent The item identifier of the parent node (ITEMID_NIL if no parent exists).
ParentHierarchy The IVsHierarchy that owns this hierarchy.

The value of this property is held as an UNADDREF ptr in SetProperty.

ParentHierarchyItemid The item identifier of this hierarchy in its parent hierarchy.
PreferredLanguageSID The preferred security identifier (SID) of the text editor language service for the project. This property is optional.

As an example, this property can be used to determine the default language for the Breakpoint dialog.

PriorityPropertyPagesCLSIDList A semicolon-delimited ordered list of class identifiers of the preferred property pages. This property is optional.

A Project Designer that shows configuration-independent and configuration-dependent property pages in a flat list should use this order as the preferred order for the pages. A project that uses the standard property page frame can ignore this property because the property page frame does not mix the two types of pages in a flat list.

ProductBrandName The hierarchy branding used to replace the application name in the main window title. This property is optional.
ProjectCapabilities A space-delimited list of the project's capabilities. This property is optional.
ProjectDesignerEditor The GUID of the project designer editor the project uses to edit project properties (SupportsProjectDesigner should return VARIANT_TRUE if a project designer editor GUID is returned). This property is optional.

This GUID corresponds to an IVsEditorFactory that launches an editor for the project properties. A project designer is an editor for project properties that is launched as a document associated with the root of the project (see IVsSpecifyProjectDesignerPages for more information).

ProjectDir The full path to the project directory (for VSITEMID_ROOT only). This property is optional.
ProjectIDGuid A GUID that identifies a project across solutions. This property is optional.

The value of this property is generated and set when a project is created. It is retrieved when the project is opened.

ProjectName Obsolete. Use Name instead.
ProjectType Obsolete. Use TypeName instead.
ProjectUnloadStatus The unload status (UNLOADSTATUS_UnloadedByUser, UNLOADSTATUS_LoadPendingIfNeeded, and so on) from the _VSProjectUnloadStatus enumeration, and is implemented only by the stub hierarchy. This property is optional.
PropertyPagesCLSIDList A semicolon-delimited list of class identifiers of the configuration independent property pages. This property is optional.
ProvisionalViewingStatus The provisional viewing status for the item (from the __VSPROVISIONALVIEWINGSTATUS enumeration). This property is optional.

If this property is not supported and the hierarchy implements IVsProject, the provisional viewing status is determined by calling GetProvisionalViewingStatusForFile with the name returned by GetMkDocument.

RefactorExtensions An array of service GUIDs that implement IVsRefactorNotify and for which this interface should be called for any refactoring operation in the project (only defined for VSITEMID_ROOT). This property is optional.

Add to this property by creating registry values under the local registry root's Projects\<project type GUID>\FileExtensions\<file extension> key with name "RefactorNotify". Then if there is a file with this extension in the project, the VSHPROPID_Extensions property contains the data from this registry value.

ReferenceManagerUser The implementation of IVsReferenceManagerUser for a project. This property is optional.
ReloadableProjectFile Obsolete. Use HandlesOwnReload instead.
RequiresReloadForExternalFileChange Indicates whether the file on disk was not last written by the project. This property is optional.

If true, the file on disk was not last written by the project and thus the user should be prompted to reload due to an external change to the file. This property is defined for ITEMID_ROOT. It is expected that this property is only called during a FilesChanged event handler. The expected implementation is for projects to record the timestamp on the project file when the file is saved. Later when this property is requested, the project should compare the current timestamp of the file to the last recorded save timestamp. If they are not equal then return true, else return false (that is, a reload is not required).

Root Obsolete. The item identifier of root must be VSITEMID_ROOT.
SaveName The name to be used during a save.

This property is needed so the shell (that is, the File->Save menu item) can display the name in the UI.

SelContainer An ISelectionContainer for property browsing. This property is optional.
ServiceReferenceSupported Indicates if the project supports service references. This property is optional.

If true, the project supports service references.

ShowOnlyItemCaption Indicates if this is an item for which only the caption should be shown in the UI instead of the full moniker. This property is optional.

If true, only the caption is shown.

ShowProjInSolutionPage Indicates whether to filter the project when Visual Basic or C# calls the component picker for add-reference. This property is optional.

If true, the project is shown in the list.

SortPriority The sort priority in [UIHierarchyWindow]. This property is optional.

Standard projects have priority 0 (default). A MiscFiles project has priority 10000, and a SolutionItems project has priority 9999.

StartupServices An IVsProjectStartupServices to add services to be started on the next project load (for VSITEMID_ROOT only).
StateIconIndex The state icon index.

The value of this property is derived from the VsStateIcon enumeration.

StatusBarClientText The hierarchy scoped text for the Client Text field of the status bar.

This text in this property is displayed while the given hierarchy is the active hierarchy. VT_EMPTY clears hierarchy scoped text and resets to the global text specified by the application.

StorageType A non-localized string representing the storage type. This property is optional.

This property is the same as the string used in the VSDIR file to differentiate between different location MRU lists.

SupportedMyApplicationTypes A semicolon-delimited list of application-types supported for project-systems that support My.Application. This property is optional.

The property-page that exposes information about My.Application can use this list to determine which values appear in the application-type dropdown as selectable choices for the user. The current list of supported values for Visual Basic's implementation is:

  • WindowsApp - a Windows executable with support for Windows application concepts such as My.Forms.

  • WindowsClassLib - a DLL with support for Windows application concepts such as My.Forms.

  • CommandLineApp - a command-line executable.

  • WindowsService - an executable that can be run as a Windows service.

  • WebControl - a DLL with support for Web application concepts.

An example value that supports all types is "WindowsApp;WindowsClassLib;CommandLineApp;WindowsService;WebControl".

SupportedOutputTypes A list of supported output types (specified as values used by the OutputTypeEx project property). This property is optional.

This property allows a flavor to customize the contents of the output type dropdown in the property pages. This property is checked first by the property pages, so this property effectively overrides the SupportedMyApplicationTypes property used by the Visual Basic property page.

SupportsAspNetIntegration Indicates if your Web project supports being consumed by Silverlight. This property is optional.

Set this property to true in your project hierarchy if your Web project supports being consumed by Silverlight.

SupportsHierarchicalUpdate Indicates whether to enable Hierarchical Update for this project. This property is optional.

Set this property to true in your project hierarchy to enable Hierarchical Update for this project. Setting this property to true generates typed datasets with TableAdapterManager and associated methods for enabling Hierarchical Update.

SupportsLinqOverDataSet Indicates whether to enable LINQ to DataSet for this project. This property is optional.

Set this property to true in your project hierarchy to enable LINQ to DataSet. Setting this property to true generates typed datasets with data tables that inherit from System.Data.TypedTableBase in order to enable LINQ queries.

SupportsNTierDesigner Indicates whether to enable the N-Tier designer for this project. This property is optional.

Set this property to true in your project hierarchy to enable the N-Tier designer. Setting this property to true creates datasets with the Dataset Project property for generating Datasets and TableAdapters into separate projects.

SupportsProjectDesigner Indicates if the project uses a Project Designer Editor instead of the property page frame to edit project properties. This property is optional.

If true, the project uses a Project Designer Editor.

SuppressOutOfDateMessageOnBuild Indicates whether the project participates in the “this configuration is out of date” message on Build (F5). This property is optional.

If true, the project does not participate.

TargetFrameworkMoniker The format for the target framework moniker.

The format of the target framework moniker is "<Identifier>,Version=<ver>,Profile=<value>" (for example, ".NETFramework,Version=v3.5,Profile=Client").

TargetFrameworkVersion The Target Framework version.

The high word is the major version and the low word is the minor version.

TargetPlatformIdentifier The Target Platform for a project type. This property is optional.

Examples are “Windows”, “Windows Phone”, “Windows Azure”, “XBox 360”, and “Portable”.

TargetPlatformVersion The version of the target platform (for example, “8.0”). This property is optional. However, it is required if TargetPlatformIdentifier is provided.
TargetRuntime The runtime the project targets (derived from the __VSPROJTARGETRUNTIME enumeration). This property is optional.
TypeGuid The GUID used to identify the type of node/hierarchy (search on GUID_ItemType).
TypeName The display name used to identify the type of node/hierarchy (used in the title bar).
UseInnerHierarchyIconList Indicates if the icon for an inner (nested) hierarchy root is to come from the inner hierarchy image list. This property is optional.

If true in the outer hierarchy, the icon for an inner (nested) hierarchy root comes from the inner hierarchy image list. If false (default), the icon comes from the outer hierarchy image list.

UserContext The IVsUserContext for the project/item. This property is optional.
WebReferenceSupported Indicates if the project supports Web references. This property is optional.

If true, the project supports Web references.

See Also

Reference

Microsoft.VisualStudio.Shell Namespace