# Check Multiple Nodes in TreeView

The TreeView lets the user select multiple nodes with checkboxes based on the value of its `CheckBoxMode` parameter.

In this article:

* [Basics](https://www.telerik.com/blazor-ui/documentation/components/treeview/checkboxes/multiple#basics)
* [Examples](https://www.telerik.com/blazor-ui/documentation/components/treeview/checkboxes/multiple#examples)
  * [Multiple selection using one-way data binding](https://www.telerik.com/blazor-ui/documentation/components/treeview/checkboxes/multiple#multiple-selection-using-one-way-data-binding)
  * [Multiple selection using two-way data binding](https://www.telerik.com/blazor-ui/documentation/components/treeview/checkboxes/multiple#multiple-selection-using-two-way-data-binding)
  * [Handle multiple selection from different data models](https://www.telerik.com/blazor-ui/documentation/components/treeview/checkboxes/multiple#handle-multiple-selection-from-different-data-models)

## Basics

To let the user use **multiple** node selection, set the `CheckBoxMode` parameter to `Telerik.Blazor.TreeViewCheckBoxMode.Multiple`.

## Examples

This section contains the following examples:

* [One-way binding](https://www.telerik.com/blazor-ui/documentation/components/treeview/checkboxes/multiple#multiple-selection-using-one-way-data-binding)
* [Two-way binding](https://www.telerik.com/blazor-ui/documentation/components/treeview/checkboxes/multiple#multiple-selection-using-two-way-data-binding)
* [Different data models](https://www.telerik.com/blazor-ui/documentation/components/treeview/checkboxes/multiple#handle-multiple-selection-from-different-data-models)

### Multiple selection using one-way data binding

You can use one-way binding to provide an initial node selection, and respond to the [`CheckedItemsChanged`](https://www.telerik.com/blazor-ui/documentation/components/treeview/events#checkeditemschanged) event to update the view-model when user selection occurs. If you don't update the model, selection is effectively canceled.

<demo metaUrl="client/treeview/checkboxes/multiple/example-1/" height="520"></demo>

### Multiple selection using two-way data binding

You can use two-way binding to get the node the user has selected. This can be useful if the node model already contains all the information you need to show based on the selection. It also reduces the amount of code you need to write.

<demo metaUrl="client/treeview/checkboxes/multiple/example-2/" height="540"></demo>

### Handle multiple selection from different data models

You can bind the treeview to different models at each level, and the selection accommodates that. You need to make sure that you cast the node to the correct type.

<demo metaUrl="client/treeview/checkboxes/multiple/example-3/" height="420"></demo>

## See Also

* [Checkboxes Overview](https://www.telerik.com/blazor-ui/documentation/components/treeview/checkboxes/overview)
* [Single Node](https://www.telerik.com/blazor-ui/documentation/components/treeview/checkboxes/single)
