# Selection

The Grid enables the user to select single or multiple cells and rows by [utilizing the built-in selection logic](https://www.telerik.com/kendo-react-ui-develop/components/grid/selection#using-the-built-in-state-management-for-selection) or [using the selection in controlled mode](https://www.telerik.com/kendo-react-ui-develop/components/grid/selection#using-selection-in-controlled-mode). It also provides default selection implementation from the `getSelectedState` utility function.

As a result, the Grid allows you to:

* Select [single cell](https://www.telerik.com/kendo-react-ui-develop/components/grid/selection/cell-selection) or [single row](https://www.telerik.com/kendo-react-ui-develop/components/grid/selection/row-selection)
* Select [multiple cells](https://www.telerik.com/kendo-react-ui-develop/components/grid/selection/cell-range-selection) or [multiple rows](https://www.telerik.com/kendo-react-ui-develop/components/grid/selection/multi-row-selection)
* Select [range of cells](https://www.telerik.com/kendo-react-ui-develop/components/grid/selection/cell-range-selection) or [range of rows](https://www.telerik.com/kendo-react-ui-develop/components/grid/selection/multi-row-selection) by dragging

[Demo Source](https://demos.telerik.com/kendo-react-ui/grid/selection/all-options/func/source.txt)

## Using the Built-in State Management for Selection

To enable selection in the Grid using the built-in state management mechanism, follow these steps:

1. Enable the [`autoProcessData`](https://www.telerik.com/kendo-react-ui-develop/components/grid/api/gridprops#autoprocessdata) prop to allow the Grid to handle paging automatically.
2. Set the [`selectable`](https://www.telerik.com/kendo-react-ui-develop/components/grid/api/gridprops#selectable) option.
3. Optionally configure the [`defaultSelect`](https://www.telerik.com/kendo-react-ui-develop/components/grid/api/gridprops#defaultSelect) value of the Grid to apply initial selection.

The following example demonstrates how to enable selection using the built-in state management of the KendoReact Grid.

[Demo Source](https://demos.telerik.com/kendo-react-ui/grid/selection/row-selection/func/source.txt)

## Using Selection in Controlled Mode

To enable the selection in KendoReact Grid and use it in controlled mode, follow these steps:

1. Set the [`selectable`](https://www.telerik.com/kendo-react-ui-develop/components/grid/api/gridprops#selectable) option.
2. Optionally configure the [`select`](https://www.telerik.com/kendo-react-ui-develop/components/grid/api/gridprops#select) value of the Grid to have control over the select state.

The following example demonstrates how to use selection in controlled mode.

[Demo Source](https://demos.telerik.com/kendo-react-ui/grid/selection/multi-row-selection/controlled/func/source.txt)

## Single/Multiple Checkbox Selection

The Grid provides both checkbox and row-click selection options which can be applied to single or multiple records:

* [Single row checkbox selection](https://www.telerik.com/kendo-react-ui-develop/components/grid/selection/row-selection#checkbox-selection)
* [Multiple rows checkbox selection](https://www.telerik.com/kendo-react-ui-develop/components/grid/selection/multi-row-selection#multiple-checkbox-selection)

## Selection Aggregates

The Grid enables you to select single or multiple cells or rows and calculate different metrics based on the selected data. You can find more details about this functionality and how to use it in [this help article](https://www.telerik.com/kendo-react-ui-develop/components/grid/selection/selection-aggregates).

## Suggested Links

* [Cell Selection](https://www.telerik.com/kendo-react-ui-develop/components/grid/selection/cell-selection)
* [Cell Range Selection](https://www.telerik.com/kendo-react-ui-develop/components/grid/selection/cell-range-selection)
* [Row Selection](https://www.telerik.com/kendo-react-ui-develop/components/grid/selection/row-selection)
* [Single Row Checkbox Selection](https://www.telerik.com/kendo-react-ui-develop/components/grid/selection/row-selection#checkbox-selection)
* [Multiple Rows Checkbox Selection](https://www.telerik.com/kendo-react-ui-develop/components/grid/selection/multi-row-selection#multiple-checkbox-selection)
* [Selection Aggregates](https://www.telerik.com/kendo-react-ui-develop/components/grid/selection/selection-aggregates)
* [API Reference of the Grid](https://www.telerik.com/kendo-react-ui-develop/components/grid/api/grid)
* [API Index of the Grid](https://www.telerik.com/kendo-react-ui-develop/components/grid/api)
