This section describes properties that configure the ButtonGroup UI component's contents, behavior and appearance.
Specifies the shortcut key that sets focus on the UI component.
Selector: access-key
Default Value: undefined
The value of this property will be passed to the accesskey
attribute of the HTML element that underlies the UI component.
Specifies whether the UI component changes its visual state as a result of user interaction.
Selector: active-state-enabled
Default Value: false
The UI component switches to the active state when users press down the primary mouse button. When this property is set to true, the CSS rules for the active state apply. You can change these rules to customize the component.
Use this property when you display the component on a platform whose guidelines include the active state change for UI components.
Specifies a template for all the buttons in the group.
Selector: button-template
Template Data:An object from the items array, extended with the icon and text fields.
Default Name: 'content'
jQuery$(function() { $("#buttonGroupContainer").dxButtonGroup({ // ... buttonTemplate: function(itemData, $buttonContent) { $buttonContent.append( // Custom jQuery elements go here ) // ===== or ===== return /* your markup goes here */ } }); });Angular
<dx-button-group ... buttonTemplate="myTemplate"> <div *dxTemplate="let buttonData of 'myTemplate'"> <!-- your markup goes here --> </div> </dx-button-group>
import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { AppComponent } from './app.component'; import { DxButtonGroupModule } from 'devextreme-angular'; @NgModule({ declarations: [ AppComponent ], imports: [ BrowserModule, DxButtonGroupModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { }Vue
<template> <DxButtonGroup ... button-template="myTemplate"> <template #myTemplate="{ data }"> <!-- your markup goes here --> </template> </DxButtonGroup> </template> <script> import 'devextreme/dist/css/dx.light.css'; import { DxButtonGroup } from 'devextreme-vue'; export default { components: { DxButtonGroup }, data() { return { // ... } } } </script>React
import React from 'react'; import 'devextreme/dist/css/dx.light.css'; import { ButtonGroup } from 'devextreme-react'; const renderButton = (data) => { return ( {/* your markup goes here */} ); } class App extends React.Component { render() { return ( <ButtonGroup ... buttonRender={renderButton} /> ); } } export default App;
Specifies whether the UI component responds to user interaction.
Specifies the global attributes to be attached to the UI component's container element.
Selector: DxElementAttr
Default Value: {}
jQuery$(function(){ $("#buttonGroupContainer").dxButtonGroup({ // ... elementAttr: { id: "elementId", class: "class-name" } }); });Angular
<dx-button-group ... [elementAttr]="{ id: 'elementId', class: 'class-name' }"> </dx-button-group>
import { DxButtonGroupModule } from "devextreme-angular"; // ... export class AppComponent { // ... } @NgModule({ imports: [ // ... DxButtonGroupModule ], // ... })Vue
<template> <DxButtonGroup ... :element-attr="buttonGroupAttributes"> </DxButtonGroup> </template> <script> import DxButtonGroup from 'devextreme-vue/button-group'; export default { components: { DxButtonGroup }, data() { return { buttonGroupAttributes: { id: 'elementId', class: 'class-name' } } } } </script>React
import React from 'react'; import ButtonGroup from 'devextreme-react/button-group'; class App extends React.Component { buttonGroupAttributes = { id: 'elementId', class: 'class-name' } render() { return ( <ButtonGroup ... elementAttr={this.buttonGroupAttributes}> </ButtonGroup> ); } } export default App;
Specifies whether the UI component can be focused using keyboard navigation.
Selector: focus-state-enabled
Default Value: true
Specifies the UI component's height.
This property accepts a value of one of the following types:
Number
The height in pixels.
String
A CSS-accepted measurement of height. For example, "55px"
, "20vh"
, "80%"
, "inherit"
.
Specifies text for a hint that appears when a user pauses on the UI component.
Specifies whether the UI component changes its state when a user pauses on it.
Selector: hover-state-enabled
Default Value: true
Configures buttons in the group.
The items array can contain:
If you need to update the UI component items, reassign the entire items[] array as shown in the following example:
buttonGroupInstance.option('items', newItems);See Also
Specifies which data field provides keys used to distinguish between the selected buttons.
Selector: key-expr
Default Value: 'text'
A function that is executed when the UI component is rendered and each time the component is repainted.
Selector: @content-ready
Function parameters:Information about the event.
Object structure:
Default Value: null
A function that is executed before the UI component is disposed of.
Selector: @disposing
Function parameters:Information about the event.
Object structure:
Default Value: null
A function used in JavaScript frameworks to save the UI component instance.
Selector: @initialized
Function parameters:Information about the event.
Object structure:
Default Value: null
Angular<dx-button-group ... (onInitialized)="saveInstance($event)"> </dx-button-group>
import { Component } from "@angular/core"; import ButtonGroup from "devextreme/ui/data_grid"; // ... export class AppComponent { buttonGroupInstance: ButtonGroup; saveInstance (e) { this.buttonGroupInstance = e.component; } }Vue
App.vue (Composition API)
<template> <div> <DxButtonGroup ... @initialized="saveInstance"> </DxButtonGroup> </div> </template> <script> import DxButtonGroup from 'devextreme-vue/button-group'; export default { components: { DxButtonGroup }, data: function() { return { buttonGroupInstance: null }; }, methods: { saveInstance: function(e) { this.buttonGroupInstance = e.component; } } }; </script>
<template> <div> <DxButtonGroup ... @initialized="saveInstance"> </DxButtonGroup> </div> </template> <script setup> import DxButtonGroup from 'devextreme-vue/button-group'; let buttonGroupInstance = null; const saveInstance = (e) => { buttonGroupInstance = e.component; } </script>React
import ButtonGroup from 'devextreme-react/button-group'; class App extends React.Component { constructor(props) { super(props); this.saveInstance = this.saveInstance.bind(this); } saveInstance(e) { this.buttonGroupInstance = e.component; } render() { return ( <div> <ButtonGroup onInitialized={this.saveInstance} /> </div> ); } }See Also jQuery
A function that is executed when a button is clicked or tapped.
Selector: @item-click
Function parameters:Information about the event.
Object structure:
Default Value: null
A function that is executed after a UI component property is changed.
Selector: @option-changed
Function parameters:Information about the event.
Object structure:
Name Type Description value anyThe modified property's new value.
previousValue anyThe UI component's previous value.
nameThe modified property if it belongs to the first level. Otherwise, the first-level property it is nested into.
fullNameThe path to the modified property that includes all parent properties.
elementThe UI component's container. It is an HTML Element or a jQuery Element when you use jQuery.
componentThe UI component's instance.
Default Value: null
The following example shows how to subscribe to component property changes:
jQuery$(function() { $("#buttonGroupContainer").dxButtonGroup({ // ... onOptionChanged: function(e) { if(e.name === "changedProperty") { // handle the property change here } } }); });Angular
<dx-button-group ... (onOptionChanged)="handlePropertyChange($event)"> </dx-button-group>
import { Component } from '@angular/core'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { // ... handlePropertyChange(e) { if(e.name === "changedProperty") { // handle the property change here } } }
import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { AppComponent } from './app.component'; import { DxButtonGroupModule } from 'devextreme-angular'; @NgModule({ declarations: [ AppComponent ], imports: [ BrowserModule, DxButtonGroupModule ], providers: [ ], bootstrap: [AppComponent] }) export class AppModule { }Vue
<template> <DxButtonGroup ... @option-changed="handlePropertyChange" /> </template> <script> import 'devextreme/dist/css/dx.light.css'; import DxButtonGroup from 'devextreme-vue/button-group'; export default { components: { DxButtonGroup }, // ... methods: { handlePropertyChange: function(e) { if(e.name === "changedProperty") { // handle the property change here } } } } </script>React
import React from 'react'; import 'devextreme/dist/css/dx.light.css'; import ButtonGroup from 'devextreme-react/button-group'; const handlePropertyChange = (e) => { if(e.name === "changedProperty") { // handle the property change here } } export default function App() { return ( <ButtonGroup ... onOptionChanged={handlePropertyChange} /> ); }
A function that is executed when a button is selected or selection is canceled.
Selector: @selection-changed
Function parameters:Information about the event that caused the function's execution.
Object structure:
Name Type Description addedItemsArray<any>
The data objects that correspond to the selected buttons.
componentThe UI component's instance.
elementThe UI component's container. It is an HTML Element or a jQuery Element when you use jQuery.
removedItemsArray<any>
The data objects that correspond to the buttons whose selection has been canceled.
The objects are taken from the items array.
Default Value: null
Switches the UI component to a right-to-left representation.
Selector: rtl-enabled
Default Value: false
When this property is set to true, the UI component text flows from right to left, and the layout of elements is reversed. To switch the entire application/site to the right-to-left representation, assign true to the rtlEnabled field of the object passed to the DevExpress.config(config) method.
DevExpress.config({ rtlEnabled: true });
DataGrid Demo Navigation UI Demo Editors Demo
Contains keys of selected buttons and allows you to specify initial button selection state.
Selector: selected-item-keys
The data field that provides the keys can be specified using the keyExpr property.
See AlsoContains the data objects that correspond to the selected buttons. The data objects are taken from the items array.
Specifies the button selection mode.
Selector: selection-mode
Default Value: 'single'
This property can have one of the following values:
selectionMode Description "single" Only one button can be in the selected state. "multiple" Multiple buttons can be in the selected state simultaneously. "none" Buttons cannot be selected, but you can use the onItemClick function to handle the button click event. See AlsoSpecifies how buttons in the group are styled.
Selector: styling-mode
Default Value: 'contained'
The following styles are available:
Specifies the number of the element when the Tab key is used for navigating.
Selector: tab-index
Default Value: 0
The value of this property will be passed to the tabindex
attribute of the HTML element that underlies the UI component.
Specifies whether the UI component is visible.
Specifies the UI component's width.
This property accepts a value of one of the following types:
Number
The width in pixels.
String
A CSS-accepted measurement of width. For example, "55px"
, "20vw"
, "80%"
, "auto"
, "inherit"
.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4