Column visibility
Control and toggle the visibility of table columns for a more flexible user experience.
Example
Id
Name
Category
Price Retail
Id
Name
Category
1
Generic Cotton Gloves
Electronics
2
Handmade Cotton Chair
Beauty
3
Sleek Silk Fish
Beauty
4
Fantastic Silk Cheese
Sports
5
Unbranded Concrete Soap
Sports
6
Handcrafted Wooden Ball
Sports
7
Incredible Rubber Table
Clothing
8
Tasty Plastic Pizza
Electronics
9
Handmade Rubber Salad
Clothing
10
Practical Wooden Sausages
Beauty
Per page:
Page 1 of 100
Showing
1
to
10
of 1000 rows
[ { "columnId": "id", "visible": true, "hideable": true }, { "columnId": "name", "visible": true, "hideable": false }, { "columnId": "category", "visible": true, "hideable": true }, { "columnId": "price.retail", "visible": false, "hideable": true } ]
{#each datagrid.columns.getLeafColumns() as column}
{
datagrid.handlers.column.toggleColumnVisibility(column.columnId);
}}
/>
{column.header}
{/each}
{#each datagrid.columns.getLeafColumns() as column}
{@render LeafHeader(column)}
{/each}
{#each datagrid.rows.getPaginatedRows() as row}
{#each datagrid.columns.getLeafColumns() as column}
{#if column.isVisible()}
{#if !row.isGroupRow()}
{/each}
{getCellContent(column, row.original)}
{:else}{/if}
{/if}
{/each}
{JSON.stringify( datagrid.columns.getLeafColumns().map((c) => { return { columnId: c.columnId, visible: c.state.visible, hideable: c.options.hideable }; }), null, 2 )}
{column.header}