# TreeView Events

The Kendo UI for Angular TreeView emits a number of events which enable you to control its behavior upon user interaction.

The following example demonstrates the [`focus`](https://www.telerik.com/kendo-angular-ui/components/treeview/api/treeviewcomponent#focus), [`blur`](https://www.telerik.com/kendo-angular-ui/components/treeview/api/treeviewcomponent#blur), [`expand`](https://www.telerik.com/kendo-angular-ui/components/treeview/api/treeviewcomponent#expand), [`collapse`](https://www.telerik.com/kendo-angular-ui/components/treeview/api/treeviewcomponent#collapse), [`selectionChange`](https://www.telerik.com/kendo-angular-ui/components/treeview/api/treeviewcomponent#selectionChange), [`filterChange`](https://www.telerik.com/kendo-angular-ui/components/treeview/api/treeviewcomponent#filterChange), and [`filterStateChange`](https://www.telerik.com/kendo-angular-ui/components/treeview/api/treeviewcomponent#filterStateChange) events of the TreeView.

[Demo Source](https://demos.telerik.com/kendo-angular-ui/demos/treeview/events/general-events/source.txt)

## Node Events

Some of the TreeView events are emitted only when the [`kendoTreeViewDragAndDrop`](https://www.telerik.com/kendo-angular-ui/components/treeview/api/draganddropdirective) functionality is enabled.

The following events will be emitted:

* [`nodeDragStart`](https://www.telerik.com/kendo-angular-ui/components/treeview/api/treeviewcomponent#nodedragstart)—Fires when the dragging begins. If prevented, the node won't be dragged.
* [`nodeDrag`](https://www.telerik.com/kendo-angular-ui/components/treeview/api/treeviewcomponent#nodedrag)—Fires during dragging.
* [`nodeDrop`](https://www.telerik.com/kendo-angular-ui/components/treeview/api/treeviewcomponent#nodedrop)—Fires when a node is dropped on a valid target. If prevented or marked as invalid, the subsequent [`addItem`](https://www.telerik.com/kendo-angular-ui/components/treeview/api/treeviewcomponent#additem) and [`removeItem`](https://www.telerik.com/kendo-angular-ui/components/treeview/api/treeviewcomponent#removeitem) events will not be fired.
* [`addItem`](https://www.telerik.com/kendo-angular-ui/components/treeview/api/treeviewcomponent#additem)—Fires on the targeted TreeView after the node is dropped.
* [`removeItem`](https://www.telerik.com/kendo-angular-ui/components/treeview/api/treeviewcomponent#removeitem)—Fires on the source TreeView after the node is dropped.
* [`nodeDragEnd`](https://www.telerik.com/kendo-angular-ui/components/treeview/api/treeviewcomponent#nodedragend)—Fires when the dragging ends.

In the following example, the event arguments are logged to the console as they occur.

[Demo Source](https://demos.telerik.com/kendo-angular-ui/demos/treeview/events/edit-events/source.txt)

## Suggested Links

* [Angular TreeView Homepage](https://www.telerik.com/kendo-angular-ui/treeview)
* [API Reference of the Angular TreeView](https://www.telerik.com/kendo-angular-ui/components/treeview/api)
