This documentation is archived and is not being maintained.

__VSHPROPID Enumeration

Specifies property settings for a hierarchy. Extended by __VSHPROPID2.

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

public enum __VSHPROPID

Member nameDescription
VSHPROPID_LASTINT_PTR. Specifies the last property ID.
VSHPROPID_ParentI4. Itemid of parent node (VSITEMID_NIL if no parent).
VSHPROPID_FirstChildItemid of first child node (VSITEMID_NIL if no children).
VSHPROPID_NextSiblingINT_PTR. Itemid of next sibling node (VSITEMID_NIL if no more siblings).
VSHPROPID_Root[obsolete] Itemid of Root must be VSITEMID_ROOT.
VSHPROPID_TypeGuidGUID to identify type of node/hierarchy; searches on GUID_ItemType.
VSHPROPID_SaveNameBSTR. File name specified on the File Save menu.
VSHPROPID_CaptionBSTR. Needed so environment (project window) can display UI.
VSHPROPID_IconImgListI4. Handle to an imagelist (only for itemid==VSITEMID_ROOT).
VSHPROPID_IconIndexI4. If Expandable=true, then IconIndex+1 is used for the open icon.
VSHPROPID_ExpandableBOOL. Specifies whether environment should display the "open-this-folder" plus sign.
VSHPROPID_ExpandByDefaultBOOL. Specifies whether environment should expand this item.
VSHPROPID_ProjectName[obsolete] Use VSHPROPID_Name.
VSHPROPID_NameBSTR. Name for project (VSITEMID_ROOT) or item.
VSHPROPID_IconHandleI4. Handle to an icon; UIHierarchyWindow will not call DestroyIcon on it.
VSHPROPID_OpenFolderIconHandleI4. [optional] Handle of an icon for an open folder. UIHierarchyWindow will not call DestroyIcon on it.
VSHPROPID_OpenFolderIconIndexI4. [optional] Index for Open Folder icon.
VSHPROPID_CmdUIGuidGUID for command bars (for root only).
VSHPROPID_SelContainerUNK. [optional] Returns an ISelectionContainer for use with property browsing.
VSHPROPID_BrowseObjectDISP. [optional] Returns an IDispatch for property browsing.
VSHPROPID_AltHierarchyUNK. [optional] Returns an IVsHierarchy for SVsTrackSelectionEx.
VSHPROPID_AltItemidI4. [optional] Returns an itemid for SVsTrackSelectionEx.
VSHPROPID_ProjectDirBSTR. [optional] Full path to project directory (for VSITEMID_ROOT only).
VSHPROPID_SortPriorityI4. [optional] Sort priority in UIHierarchyWindow. Standard projects have priority zero (default).
VSHPROPID_UserContextUNK. [optional] IVsUserContext for the project or item.
VSHPROPID_EditLabelBSTR. [optional] String displayed for in-place editing node caption.
VSHPROPID_ExtObjectDISP. [optional] For ITEMID_ROOT, this is the ext.object of the project (Project).
VSHPROPID_ExtSelectedItemDISP. [optional] Returns a custom SelectedItem object for the given itemid.
VSHPROPID_StateIconIndexI4. State icon index. Use VsStateIcon enumeration.
VSHPROPID_ProjectType[obsolete] Use VSHPROPID_TypeName.
VSHPROPID_TypeNameBSTR. Displays name to identify type of node/hierarchy (used in title bar).
VSHPROPID_ReloadableProjectFile[obsolete] Use VSHPROPID_HandlesOwnReload.
VSHPROPID_HandlesOwnReloadBOOL. [optional] Project handles unload/reload itself (otherwise environment handles it).
VSHPROPID_ParentHierarchyUNK. IVsHierarchy that owns this hierarchy.
VSHPROPID_ParentHierarchyItemidINT_PTR. The itemid of this hierarchy in its parent hierarchy.
VSHPROPID_ItemDocCookieINT_PTR. [optional] The document cookie (an abstract value) of the hierarchy item.
VSHPROPID_ExpandedBOOL. Specifies whether the node is currently expanded in the UIHierarchyWindow, starts as false.
VSHPROPID_ConfigurationProviderOBSOLETE. Use IVsGetCfgProvider.
VSHPROPID_ImplantHierarchyUNK. [optional] IVsHierarchy implant for this hierarchy.
VSHPROPID_OwnerKeyBSTR. [optional] Owner key string that identifies the project GUID of the owning project.
VSHPROPID_StartupServicesUNK. [optional] Returns an IVsProjectStartupServices* to add services to be started on next project load (for VSITEMID_ROOT only).
VSHPROPID_FirstVisibleChildINT_PTR. [optional] Similar to FirstChild but only walks items to be displayed in UIHierarchyWindow. Required if hierarchy supports multiple (subsetted or supersetted) views of its contents.
VSHPROPID_NextVisibleSiblingINT_PTR. [optional] Similar to NextSibling but only walks items to be displayed in UIHierarchyWindow. Required if hierarchy supports multiple (subsetted or supersetted) views of its contents.
VSHPROPID_IsHiddenItemBOOL. [optional] Specifies that item is not displayed in current UIHierarchyWindow view. Required if hierarchy supports multiple (subsetted) views of its contents.
VSHPROPID_IsNonMemberItemBOOL. [optional] Specifies that item is not considered a member of the hierarchy. Required if hierarchy supports (supersetted) views of its contents, that is, ShowAllFiles displays files in directory that are not members of the project.
VSHPROPID_IsNonLocalStorageBOOL. [optional] Specifies whether project storage is local. IPersistFileFormat is used for saving project regardless of whether it is a local "file" or not.
VSHPROPID_StorageTypeBSTR. [optional] Non-localize string representing storage type. Same as string that is used in VSDIR file to differentiate between different location MRU lists.
VSHPROPID_ItemSubTypeBSTR. [optional] Non-localize string representing the subtype of the item. It is up to each package to agree on the meaning of this string.
VSHPROPID_OverlayIconIndexI4. [optional] Use VSOVERLAYICON enumeration. Overlay for the item's main icon.
VSHPROPID_DefaultNamespaceBSTR. [optional] String representing the item's folder-based namespace: rootnamespace.folder.subfolder.
VSHPROPID_IsNonSearchableBOOL. [optional] Specifies that item is not subject to search-and-replace through Find/Replace in Files. Should be true for the project file itself.
VSHPROPID_IsFindInFilesForegroundOnlyBOOL. [optional] If true, FindInFiles runs in main thread.
VSHPROPID_CanBuildFromMemoryBOOL. [optional] If true, do not prompt to save before building.
VSHPROPID_PreferredLanguageSIDGUID. [optional] Preferred SID of (text editor) language service for project.
VSHPROPID_ShowProjInSolutionPageBOOL. [optional] Used to filter project when vb/c# calls the component picker for add-reference. Return VARIANT_TRUE to show the project is in the list.
VSHPROPID_AllowEditInRunModeBOOL. [optional] If false or E_NOTIMPL, the compiler disables edits during run mode (this is the most common expected behavior). true eables edits. This property enables VSA scenarios.
VSHPROPID_IsNewUnsavedItemBOOL. [optional] If true, this is a new unsaved item (as obtained from File.New.File) so the moniker is temporary name and the caption should be used in the UI instead.
VSHPROPID_ShowOnlyItemCaptionBOOL. [optional] If true, show only the caption in the UI instead of the full moniker.
VSHPROPID_ProjectIDGuidGUID. [optional] Identifies a project across solutions. Generated and set when project is created. Retrieved when project is opened.
VSHPROPID_DesignerVariableNamingI4. [optional] Value from the VSDESIGNER_VARIABLENAMING enumeration.
VSHPROPID_DesignerFunctionVisibilityI4. [optional] Value from the VSDESIGNER_FUNCTIONVISIBILITY enumeration.
VSHPROPID_HasEnumerationSideEffectsBOOL. [optional] If true, then this hierarchy is not enumerated for FindInFiles and similar hierarchy enumerations. (Useful if enumerating could cause a login dialog or is unacceptably slow.)
VSHPROPID_DefaultEnableBuildProjectCfgBOOL. [optional] By default, specifies if "Build" should be initially checked in the solution cfg. By default, typically "Build" is checked if the project supports IVsBuildableProjectCfg.
VSHPROPID_DefaultEnableDeployProjectCfgBOOL. [optional] By default, specifies if "Deploy" should be initially checked in the solution cfg. By default, typically "Deploy" is checked by if the project supports IVsDeployableProjectCfg.
VSHPROPID_FIRSTINT_PTR. Specifies the first property ID.

Each __VSHPROPID must return a VARIANT structure filled in with the correct VT_ type. The caller may assume the VT_ type is correct. That is, you do not have to call VariantChangeType(), or verify the type, beyond an ASSERT() to make sure that there were no header file mismatches, and so on.

Important noteImportant

__VSHPROPID values must not overlap any other *PROPID group values.

This same logic applies to the caller when it sets a property; the hierarchy assumes that the caller has passed a VARIANT already converted to the correct VT_ type.