The DockPanel component for React represents a container for other widgets or elements.
It arranges its inner elements depending on the value of the 'dock' attribute. The possible 'dock' attribute values are: 'left, right, top and bottom'.
Refer to React Getting Started before you start with this help topic.
The DockPanel component for React requires the following imports.
Then we create our component class. Properties and methods are put as React props.
Finally we render our class in the desired HTML element:
In order to bind to any event, change any property or call any method, we need a reference to the component.
For that we use the React "ref" Callback Attribute:
Now, when we have a reference, we need to call the desired event/property/method.
This is done in the componentDidMount() React Component Lifecycle method.
class App extends React.Component { componentDidMount() { //your logic } render () { return ( .... ) }};
The layout event occurs when the layout is performed.
The following example demonstrates how to add an event listener:
componentDidMount (){ this.refs.myDockPanel.on('layout', (event) => { //your logic }); }
This is how you call props:
//Get Propertieslet height = this.refs.myDockPanel.height(); //Set Propertiesthis.refs.myDockPanel.height(450);
Every component have a method setOptions which accepts a object as an argument. This object contains component settings.
this.refs.myDockPanel.setOptions({ lastchildfill: false, width: 550, height: 850})
Every component also have a method getOptions which returns a object containing the component settings.
let options = this.refs.myDockPanel.getOptions();
The following example demonstrates how to create a DockPanel component.
import React from 'react';import ReactDOM from 'react-dom'; import JqxDockPanel from 'jqwidgets-react/react_jqxdockpanel.js'; class App extends React.Component { render () { return ( <jqxDockPanel height={300}> <div id='first' dock='left'> First Div </div> <div id='second' dock='top' style={{ height: 100 }}> Second Div </div> <div id='third' dock='right'> Third Div </div> <div id='fourth'> Fourth Div </div> </jqxDockPanel> ) }} ReactDOM.render(<App />, document.getElementById('app'));