React Gantt - contextMenu.items
The context menu contains a set of default commands: 'addTask', 'taskDetails', and 'deleteTask'. Use the contextMenu property to recreate the context menu items.
To add a predefined item to the context menu, add its name and optional settings (for example, 'visible', 'text', and 'icon') to the items collection.
- import React from 'react';
- import Gantt, { ContextMenu } from 'devextreme-react/gantt';
- const App = () => {
- return (
- <Gantt...>
- <ContextMenu>
- <Item name="addTask" />
- <Item name="deleteTask" />
- <Item text="Zoom">
- <Item name="zoomIn" />
- <Item name="zoomOut" />
- </Item>
- </ContextMenu>
- </Gantt>
- );
- };
- export default App;
Custom Items
To add a custom context menu item, specify its text and optional settings (for example, name or category). Use the customCommand event to handle clicks on custom context menu items.
- import React from 'react';
- import Gantt, { ContextMenu } from 'devextreme-react/gantt';
- const App = () => {
- const onCustomCommand = (e) => {
- if(e.name == 'item1') {
- // your code
- }
- };
- return (
- <Gantt
- onCustomCommand={onCustomCommand} >
- <ContextMenu>
- <Item text="Category">
- <Item name="item1" text="Item 1" />
- <Item name="item2" text="Item 2" />
- <Item name="item3" text="Item 3" />
- </Item>
- </ContextMenu>
- </Gantt>
- );
- }
- export default App;
Result:
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 property 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.
name
- import React from 'react';
- import Gantt, { ContextMenu } from 'devextreme-react/gantt';
- const App = () => {
- const onCustomCommand = (e) => {
- if(e.name == 'item1') {
- // your code
- }
- };
- return (
- <Gantt
- onCustomCommand={onCustomCommand} >
- <ContextMenu>
- <Item text="Category">
- <Item name="item1" text="Item 1" />
- <Item name="item2" text="Item 2" />
- <Item name="item3" text="Item 3" />
- </Item>
- </ContextMenu>
- </Gantt>
- );
- }
- export default App;
render
An alias for the template property specified in React. Accepts a rendering function. Refer to Using a Rendering Function for more information.
template
The following types of the specified value are available.
- Assign a string containing the name of the required template.
- Assign a jQuery object of the template's container.
- Assign a DOM Node of the template's container.
- Assign a function that returns the jQuery object or a DOM Node of the template's container.
The following example adds a custom item to the component. Note that Angular and Vue use custom templates instead of the template property. In React, specify the render or component properties.
- import React from 'react';
- import 'devextreme/dist/css/dx.light.css';
- import Gantt, {
- ContextMenu, Item
- } from 'devextreme-react/gantt';
- const renderCustomItem = () => {
- return <div>Custom Item</div>;
- }
- function App() {
- return (
- <Gantt ... >
- <ContextMenu>
- <Item ...
- render={renderCustomItem}
- >
- </Item>
- </ContextMenu>
- </Gantt>
- );
- }
- export default App;
See Also
If you have technical questions, please create a support ticket in the DevExpress Support Center.