Comments (5)
Thanks for the quick response @michelengelen! This works for the filter list, but how can I remove this in the "Manage columns" panel as well? I canβt see a slotProps similar to this in the documentation.
No problem ... I did forget to include that.
There actually is a recipe that shows how to do this in the docs: Customize the list of columns in panel
Important
The slotProp got changed in v7
v6
=> slotProps.columnsPanel.getTogglableColumns
v7
=> slotProps.columnsManagement.getTogglableColumns
TLDR;
const getTogglableColumns = (columns: GridColDef[]) => {
return columns.filter((column) => column.type !== 'custom').map((column) => column.field);
};
...
<DataGridPremium
{...data}
apiRef={apiRef}
initialState={initialState}
onRowSelectionModelChange={handleRowSelectionModelChange}
rowSelectionModel={rowSelectionModel}
checkboxSelection
hideFooter
slotProps={{
filterPanel: {
filterFormProps: {
filterColumns,
},
},
columnsManagement: {
getTogglableColumns,
},
}}
/>
from mui-x.
Hey @RomanMain and thanks for raising this issue.
It is indeed not entirely intuitive and I guess even a bug, right @MBilalShafi ?
For a workaround (and maybe for additional filtering if needed) you can use the slotProps.filterPanel.filterFormProps.filterColumns
method:
const filterColumns = ({ columns }: FilterColumnsArgs) => {
return columns.filter((column) => column.type !== 'custom').map((column) => column.field);
};
...
<DataGridPremium
{...data}
apiRef={apiRef}
initialState={initialState}
onRowSelectionModelChange={handleRowSelectionModelChange}
rowSelectionModel={rowSelectionModel}
checkboxSelection
hideFooter
slotProps={{
filterPanel: {
filterFormProps: {
filterColumns,
},
},
}}
/>
In this specific case we can just filter by column.type !== 'custom'
since those will filter all auto generated columns by default.
I will still put this on our board to see if the current behavior is intended.
If you need additional assistance please feel free to reach out! Thanks again! ππΌ
from mui-x.
Thanks for the quick response @michelengelen! This works for the filter list, but how can I remove this in the "Manage columns" panel as well? I canβt see a slotProps similar to this in the documentation.
from mui-x.
Hey @RomanMain,
As @michelengelen mentioned, the Customize the list of columns in panel seems exactly what you are looking for. The demo depicts how to hide the status
column, and the grouped column from the columns panel (v6) and columns management panel (v7).
from mui-x.
The issue has been inactive for 7 days and has been automatically closed.
from mui-x.
Related Issues (20)
- [Datagrid v7] Layout shifts when loading data with autoHeight=true HOT 1
- [charts] How to avoid component overflow when using composition HOT 5
- [DataGrid] Custom Scrollbar HOT 1
- [data grid] Quick Filter is not correctly applied to dynamically added columns HOT 2
- [TreeView] `RichTreeView` throws error when using dynamic items HOT 3
- Unable to use the the mui/x-chart after install HOT 1
- [data grid] Grid column header violates accessibility rule - Name, Role, Value (Level A) HOT 1
- [pickers] 5-4-5 Calendar (US Retail) HOT 2
- Search bar is loosing focus on when we use custom multiselect component with filter model HOT 1
- [pickers] DateCalendar broken, even on MUI website HOT 8
- [charts] Bar chart axis issues HOT 3
- [data grid] Is it possible to support copyValueParser in DataGrid? HOT 5
- Sorting in not working when we click on up arrow icon HOT 1
- [pickers] DateField behavior is impacted by the year format HOT 2
- [Charts] Support BarChart with scaleType: time HOT 3
- Charts legend rounded symbols HOT 3
- Closing the calendar fires both onOpen and onClose events. (MUI 5) HOT 5
- [charts] PieChart crashes on hover when changing data HOT 5
- Closed HOT 2
- [data grid] renderCell position offset in case of display:flex HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mui-x.