Controlling the grid from parent
You can control the grid from a parent component using a ref:
import { DataSheetGrid, DataSheetGridRef,} from 'react-datasheet-grid'
function App() { const ref = useRef<DataSheetGridRef>(null)
return <DataSheetGrid ref={ref} />}
You can then use that ref to control the grid from any callback.
function App() { const ref = useRef<DataSheetGridRef>(null)
useEffect(() => { ref.current?.setSelection({ min: { col: 'firstName', row: 0 }, max: { col: 2, row: 3 }, }) }, [])
return ( <> <DataSheetGrid ref={ref} /> <button onClick={() => ref.current?.setActiveCell({ col: 1, row: 0 })} /> </> )}
#
ReferenceSee the exhaustive list of properties available.
#
ExampleHover an element to trigger it:
ref.current?.setActiveCell({ col: 1, row: 3 })ref.current?.setActiveCell({ col: 'lastName', row: 1 })ref.current?.setSelection({ min: { col: 'active', row: 1 }, max: { col: 1, row: 4 }})ref.current?.setSelection(null)
Active
First name
Last name
Number
1
2
3
4
5
6
7
8
9
10
rows