# TreeView

> The TreeView is always constructed with a state object and optionally a multi-column header object if a header is needed.

## Definition

* **Type:** Constructor
* **Namespace:** [UnityEditor.IMGUI.Controls](/engine/6000.6/script-reference/unityeditor/imgui/controls.md)
* **Assembly:** UnityEditor.CoreModule

## TreeView(TreeViewState\<T>)

The TreeView is always constructed with a state object and optionally a multi-column header object if a header is needed.

```csharp
public TreeView(TreeViewState<TIdentifier> state)
```

### Parameters

**** (TreeViewState\<T>): TreeView state (expanded items, selection etc.)

### Remarks

Additional Resources: [TreeViewState\<TIdentifier>](/engine/6000.6/script-reference/unityeditor/imgui/controls/treeviewstate1.md), [MultiColumnHeader](/engine/6000.6/script-reference/unityeditor/imgui/controls/multicolumnheader.md).

## TreeView(TreeViewState\<T>, MultiColumnHeader)

The TreeView is always constructed with a state object and optionally a multi-column header object if a header is needed.

```csharp
public TreeView(TreeViewState<TIdentifier> state, MultiColumnHeader multiColumnHeader)
```

### Parameters

**** (TreeViewState\<T>): TreeView state (expanded items, selection etc.)**** (\[MultiColumnHeader]\(/engine/6000.6/script-reference/unityeditor/imgui/controls/multicolumnheader)): Multi-column header for the TreeView.

### Remarks

Additional Resources: [TreeViewState\<TIdentifier>](/engine/6000.6/script-reference/unityeditor/imgui/controls/treeviewstate1.md), [MultiColumnHeader](/engine/6000.6/script-reference/unityeditor/imgui/controls/multicolumnheader.md).
