We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date

Add a custom dropdown button to a grid toolbar

I want a dropdown list in the toolbar of the grid, like the columnChooser eg, I tried several options, but nothing works?

Thnxs in advanced

3 Replies

BS Balaji Sekar Syncfusion Team February 3, 2020 06:04 AM

Hi Arnaud, 
 
Greetings from Syncfusion. 
 
Query#:  Need  dropdown list in the toolbar of the grid, 
 
We have analyzed your query and prepared sample based on your requirement. In that sample we have rendered a dropdown button component in the toolbar using toolbarTemplate feature  and the options were given as items for the dropdown. The dropdown component has select event which will be triggered when select the option values. Using the select event we have performed some of the operations in the Grid like editing, updating, deleting of particular row. Documentation and sample link shared  to know more about the DropdownButton component. 
 
Code snippet: 
App.component.ts       
 
public onSelect(args: any): void { 
        if(args.item.text === 'Update'){ 
          this.grid.endEdit(); 
        } 
        if(args.item.text === 'Edit'){ 
          this.grid.selectRow(0); 
          this.grid.startEdit(); 
        } 
        if(args.item.text === 'Delete'){ 
          this.grid.selectRow(0); 
          this.grid.deleteRow(this.grid.getContent().querySelectorAll('.e-row')[0] as any); 
        } 
    } 
 
App.component.html 

<ng-template #toolbarTemplate let-data> 
                            <button ejs-dropdownbutton [items]='items' (select)='onSelect($event)' content='Edit Options'></button>` 
                </ng-template> 
 
 
Documentation Links: 
 
Please get back to us, if you need further assistance. 
 
Regards, 
Balaji Sekar. 



AR Arnaud March 2, 2020 02:44 PM

Thnxs,

But the default Toolbar is gone. I want to comine it with the builtin actions eg ColumnChooser and SearchBox

Is that possible?

Regards,
Arnaud


BS Balaji Sekar Syncfusion Team March 3, 2020 01:21 AM

Hi Arnaud, 
 
Query: “I want to combine it with the builtin actions e.g., ColumnChooser and SearchBox. Is that possible? 
 
Yes, we can combine the  the built-in toolbar items with custom components in the Grid toolbar. In below code example we have add custom component using template property of toolbar component in Grid.  
 
Please refer the below code example and sample for more information. 
 
<ejs-grid [dataSource]='data' allowPaging='true' [pageSettings]='pageSettings' [editSettings]='editSettings' [toolbar]='toolbar'> 
   . . . . 
</ejs-grid> 
 
<ng-template #template let-data> 
    <ejs-checkbox label="Checkbox" [indeterminate]="true"></ejs-checkbox> 
</ng-template> 

 
@ViewChild('template') 
public toolbarTemplate: any; 
@ViewChild('template2') 
public sliderTemplate: any; 
public ngOnInit(): void { 
    this.data = orderDetails; 
    this.editSettings = { allowEditing: true, allowAdding: true, allowDeleting: true, mode: 'Dialog' }; 
    this.toolbar = ['Add', 'Edit', 'Delete', ‘Search’, {template: this.toolbarTemplate},  {template: this.sliderTemplate}]; 
    . . . . . 
} 

 
 
Please get back to us if you need further assistance on this. 
 
Regards, 
Balaji Sekar. 


Loader.
Live Chat Icon For mobile
Up arrow icon