• Public
  • Public/Protected
  • All

Class TreeItem

A tree item is an UI element of the tree. Tree items are created by the data provider.


  • TreeItem





Optional label

label: string | TreeItemLabel

A human-readable string describing this item. When falsy, it is derived from resourceUri.

Optional id

id: string

Optional id for the tree item that has to be unique across tree. The id is used to preserve the selection and expansion state of the tree item.

If not provided, an id is generated using the tree item's label. Note that when labels change, ids will change and that selection and expansion state cannot be kept stable anymore.

Optional iconPath

iconPath: string | Uri | ThemeIcon | { light: string | Uri; dark: string | Uri }

The icon path or ThemeIcon for the tree item. When falsy, Folder Theme Icon is assigned, if item is collapsible otherwise File Theme Icon. When a file or folder ThemeIcon is specified, icon is derived from the current file icon theme for the specified theme icon using resourceUri (if provided).

Optional description

description: string | boolean

A human-readable string which is rendered less prominent. When true, it is derived from resourceUri and when falsy, it is not shown.

Optional resourceUri

resourceUri: Uri

The Uri of the resource representing this item.

Will be used to derive the label, when it is not provided. Will be used to derive the icon from current file icon theme, when iconPath has ThemeIcon value.

Optional tooltip

tooltip: string | MarkdownString

The tooltip text when you hover over this item.

Optional command

command: Command

The Command that should be executed when the tree item is selected.

Please use vscode.open or vscode.diff as command IDs when the tree item is opening something in the editor. Using these commands ensures that the resulting editor will appear consistent with how other built-in trees open editors.

Optional collapsibleState

collapsibleState: TreeItemCollapsibleState

TreeItemCollapsibleState of the tree item.

Optional contextValue

contextValue: string

Context value of the tree item. This can be used to contribute item specific actions in the tree. For example, a tree item is given a context value as folder. When contributing actions to view/item/context using menus extension point, you can specify context value for key viewItem in when expression like viewItem == folder.

"contributes": {
  "menus": {
    "view/item/context": [
        "command": "extension.deleteFolder",
        "when": "viewItem == folder"

This will show action extension.deleteFolder only for items with contextValue is folder.

Optional accessibilityInformation

accessibilityInformation: AccessibilityInformation

Accessibility information used when screen reader interacts with this tree item. Generally, a TreeItem has no need to set the role of the accessibilityInformation; however, there are cases where a TreeItem is not displayed in a tree-like way where setting the role may make sense.

Optional checkboxState

checkboxState: TreeItemCheckboxState | { state: TreeItemCheckboxState; tooltip?: string; accessibilityInformation?: AccessibilityInformation }

TreeItemCheckboxState of the tree item. onDidChangeTreeData should be fired when checkboxState changes.

Generated by TypeDoc. Maintained by 洛竹