React TreeList - columns.buttons
Allows you to customize buttons in the edit column or create a custom command column. Applies only if the column's type is "buttons".
component
An alias for the template property specified in React. Accepts a custom component. Refer to Using a Custom Component for more information.
icon
This option accepts one of the following:
- The icon's URL
- The icon's name if the icon is from the DevExtreme icon library
- The icon's CSS class if the icon is from an external icon library (see External Icon Libraries)
- The icon in the Base64 format
- The icon in the SVG format. Ensure that the source is reliable.
See Also
- buttons[].text
onClick
A function that is executed when the button is clicked or tapped. Not executed if a template is used.
Name | Type | Description |
---|---|---|
column |
The properties of the button's column. |
|
component |
The widget's instance. |
|
element |
The widget's container. It is an HTML Element or a jQuery Element when you use jQuery. |
|
event | Event (jQuery or EventObject) |
The event that caused the function to execute. It is a dxEvent or a jQuery.Event when you use jQuery. |
model |
The model data. Available only if you use Knockout. |
|
row |
The properties of the button's row. |
render
An alias for the template property specified in React. Accepts a rendering function. Refer to Using a Rendering Function for more information.
template
Name | Type | Description |
---|---|---|
column |
The column's properties. |
|
columnIndex |
The index of the cell's column. |
|
component |
The widget's instance. |
|
data |
The data of the cell's row. |
|
key | any |
The row's key. |
row |
The row's properties. |
|
rowIndex |
The index of the cell's row. Begins with 0 on each page. Group rows are included. |
|
rowType |
The row's type. |
When you use a custom button template, the onClick function is ignored. Instead, handle the click
event of the element placed inside the template:
- import React from 'react';
- import 'devextreme/dist/css/dx.common.css';
- import 'devextreme/dist/css/dx.light.css';
- import TreeList, {
- Column,
- Button
- } from 'devextreme-react/tree-list';
- class App extends React.Component {
- constructor(props) {
- super(props);
- this.renderMyCommand = this.renderMyCommand.bind(this);
- }
- logMyCommandClick() {
- console.log('My command was clicked');
- }
- renderMyCommand() {
- return <a href="#" onClick={this.logMyCommandClick}>My command</a>
- }
- render() {
- return (
- <TreeList ... >
- {/* ... */}
- <Column type="buttons">
- <Button
- render={this.renderMyCommand}
- />
- </Column>
- </TreeList>
- );
- }
- }
- export default App;
See Also
visible
Name | Type | Description |
---|---|---|
column |
The column's properties. |
|
component |
The widget's instance. |
|
row |
The row's properties. |
Use the function when you need to show or hide the button for specific rows. For example, the widget lists online orders and allows users to edit them. A Cancel button should allow users to cancel their orders. However, completed orders should not be canceled. The visible function in this case may look as follows:
If you have technical questions, please create a support ticket in the DevExpress Support Center.