# 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.6/script-reference/unity/hierarchy.md)
* **Assembly:** UnityEngine.HierarchyModule
* **Inherits from:** [HierarchyNodeTypeHandlerBase](/engine/6000.6/script-reference/unity/hierarchy/hierarchynodetypehandlerbase.md)

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

## Constructors

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

## Methods

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

## Inheritance

**Inherited Members:**

* [HierarchyNodeTypeHandlerBase.Initialize()](/engine/6000.6/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/initialize.md)
* [HierarchyNodeTypeHandlerBase.Dispose(bool)](/engine/6000.6/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/dispose.md#dispose\(bool\))
* [HierarchyNodeTypeHandlerBase.GetNodeType()](/engine/6000.6/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/getnodetype.md)
* [HierarchyNodeTypeHandlerBase.GetNodeTypeName()](/engine/6000.6/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/getnodetypename.md)
* [HierarchyNodeTypeHandlerBase.GetNodeFromEntityId(EntityId)](/engine/6000.6/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/getnodefromentityid.md)
* [HierarchyNodeTypeHandlerBase.GetNodesFromEntityIds(ReadOnlySpan\<EntityId>, Span\<HierarchyNode>)](/engine/6000.6/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/getnodesfromentityids.md)
* [HierarchyNodeTypeHandlerBase.GetEntityIdsFromNodes(ReadOnlySpan\<HierarchyNode>, Span\<EntityId>)](/engine/6000.6/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/getentityidsfromnodes.md)
* [HierarchyNodeTypeHandlerBase.SearchBegin(HierarchySearchQueryDescriptor, HierarchyViewModel)](/engine/6000.6/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/searchbegin.md#searchbegin\(hierarchysearchquerydescriptor-hierarchyviewmodel\))
* [HierarchyNodeTypeHandlerBase.SearchEnd(HierarchyViewModel)](/engine/6000.6/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/searchend.md#searchend\(hierarchyviewmodel\))
* [HierarchyNodeTypeHandlerBase.SetSearchAlwaysVisible(bool)](/engine/6000.6/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/setsearchalwaysvisible.md)
* [HierarchyNodeTypeHandlerBase.UpdateBegin()](/engine/6000.6/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/updatebegin.md)
* [HierarchyNodeTypeHandlerBase.UpdateEnd()](/engine/6000.6/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/updateend.md)
* [HierarchyNodeTypeHandlerBase.ViewModelPostUpdate(HierarchyViewModel)](/engine/6000.6/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/viewmodelpostupdate.md)
* [HierarchyNodeTypeHandlerBase.ViewModelPostSetState(HierarchyViewModel)](/engine/6000.6/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/viewmodelpostsetstate.md)
* [HierarchyNodeTypeHandlerBase.GetUIDInfo(HierarchyUIDInfo)](/engine/6000.6/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/getuidinfo.md)
* [HierarchyNodeTypeHandlerBase.WriteUIDs(ReadOnlySpan\<HierarchyNode>, Span\<byte>)](/engine/6000.6/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/writeuids.md)
* [HierarchyNodeTypeHandlerBase.UndoRedoSupported()](/engine/6000.6/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/undoredosupported.md)
* [HierarchyNodeTypeHandlerBase.Hierarchy()](/engine/6000.6/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/hierarchy.md)
* [HierarchyNodeTypeHandlerBase.CommandList()](/engine/6000.6/script-reference/unity/hierarchy/hierarchynodetypehandlerbase/commandlist.md)
