# HierarchyNodeTypeHandler

> Provides a base class for hierarchy node type handlers that manage how specific node types are displayed and interact with HierarchyView instances.

## Definition

* **Type:** Class
* **Namespace:** [Unity.Hierarchy](/engine/6000.5/script-reference/unity/hierarchy.md)
* **Assembly:** UnityEngine.HierarchyModule
* **Inherits from:** [HierarchyNodeTypeHandlerBase](/engine/6000.5/script-reference/unity/hierarchy/hierarchynodetypehandlerbase.md)
* **Implements:** [IDisposable](https://learn.microsoft.com/dotnet/api/system.idisposable)

```csharp
public abstract class HierarchyNodeTypeHandler : HierarchyNodeTypeHandlerBase, IDisposable
```

## Constructors

| Constructor                                                                                                    | Description                                                                                                            |
| -------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| [HierarchyNodeTypeHandler()](/engine/6000.5/script-reference/unity/hierarchy/hierarchynodetypehandler/ctor.md) | Creates a new [HierarchyNodeTypeHandler](/engine/6000.5/script-reference/unity/hierarchy/hierarchynodetypehandler.md). |

## Methods

| Method                                                                                                   | Description                                                                                                                                                                                                                                                                        |
| -------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [OnBindItem](/engine/6000.5/script-reference/unity/hierarchy/hierarchynodetypehandler/onbinditem.md)     | Called whenever a [HierarchyViewItem](/engine/6000.5/script-reference/unity/hierarchy/hierarchyviewitem.md) is bound to a [HierarchyView](/engine/6000.5/script-reference/unity/hierarchy/hierarchyview.md). Typically used to set up the item with the necessary data and styles. |
| [OnBindView](/engine/6000.5/script-reference/unity/hierarchy/hierarchynodetypehandler/onbindview.md)     | Called when the [HierarchyNodeTypeHandler](/engine/6000.5/script-reference/unity/hierarchy/hierarchynodetypehandler.md) is bound to a [HierarchyView](/engine/6000.5/script-reference/unity/hierarchy/hierarchyview.md).                                                           |
| [OnUnbindItem](/engine/6000.5/script-reference/unity/hierarchy/hierarchynodetypehandler/onunbinditem.md) | Called whenever a [HierarchyViewItem](/engine/6000.5/script-reference/unity/hierarchy/hierarchyviewitem.md) is unbound from a [HierarchyView](/engine/6000.5/script-reference/unity/hierarchy/hierarchyview.md).                                                                   |
| [OnUnbindView](/engine/6000.5/script-reference/unity/hierarchy/hierarchynodetypehandler/onunbindview.md) | Called when the [HierarchyNodeTypeHandler](/engine/6000.5/script-reference/unity/hierarchy/hierarchynodetypehandler.md) is unbound from a [HierarchyView](/engine/6000.5/script-reference/unity/hierarchy/hierarchyview.md).                                                       |

## Inheritance

**Inherited Members:**

* [HierarchyNodeTypeHandlerBase.Initialize()](/engine/6000.5/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/initialize.md)
* [HierarchyNodeTypeHandlerBase.Dispose(bool)](/engine/6000.5/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/dispose.md#dispose\(bool\))
* [HierarchyNodeTypeHandlerBase.GetNodeType()](/engine/6000.5/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/getnodetype.md)
* [HierarchyNodeTypeHandlerBase.GetNodeTypeName()](/engine/6000.5/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/getnodetypename.md)
* [HierarchyNodeTypeHandlerBase.SearchBegin(HierarchySearchQueryDescriptor)](/engine/6000.5/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/searchbegin.md)
* [HierarchyNodeTypeHandlerBase.SearchEnd()](/engine/6000.5/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/searchend.md)
* [HierarchyNodeTypeHandlerBase.ViewModelPostUpdate(HierarchyViewModel)](/engine/6000.5/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/viewmodelpostupdate.md)
* [HierarchyNodeTypeHandlerBase.Hierarchy()](/engine/6000.5/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/hierarchy.md)
* [HierarchyNodeTypeHandlerBase.CommandList()](/engine/6000.5/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/commandlist.md)
