Current filter:
                                You should refresh the page.
                                  • This is a grid with over 30 fields. The loadPanel does not handle the interim grid state while applying the filter. Clicking the Show Filter button is also very slow.
                                    Clicking loadPanel simply toggles a state applied to the FilterRow component (visible prop)

                                Show all comments
                                • Artem (DevExpress Support) 08.09.2019

                                  Hi Jon,

                                  The behavior looks incorrect. However, I cannot reproduce it locally. Could you please modify this example to demonstrate the issue?

                                • Jon Hodges 08.12.2019

                                  You can use the file attached to recreate the issue (dataSource.data is the data to be used)

                                • Jon Hodges 08.12.2019

                                  The FilterRow visibility is triggered by a state toggle in the component like: <FilterRow visible={showFilterRow} /> 

                                • Jon Hodges 08.12.2019

                                  Note that I'm sending you the file because codepen won't allow me to save files over 5M

                                • Artem (DevExpress Support) 08.12.2019

                                  Hi Jon,
                                   
                                  Thank you for the update. I see that 'dataSource' contains 'schema' and 'data'. While it's clear that 'data' should be assigned to the dataSource option, it's not clear how 'schema' should be processed.
                                  Do you parse it in customizeColumns or use the "Column" component? Would you please specify this part as well?

                                • Jon Hodges 08.13.2019

                                  The schema is used to generate the columns through a different function which map over it to create the columns. It's pushing a JSX array of <Columns> during render.
                                  I could also pass the generated columns properties directly to the DataGrid configuration. That would probably make more sense.
                                  I'm not sure if pushing the Columns ad Hoc (after the grid is initialised) could explain the behaviour. ..

                                • Artem (DevExpress Support) 08.13.2019

                                  Thank you for the clarification. I need more time to test both case. Please bear with me.

                                • Artem (DevExpress Support) 08.14.2019

                                  Hi,

                                  I created a test example that covers both cases:

                                  • Columns are passed to the defaultColumns option
                                  • Columns are created in JSX using the "Column" component.

                                  Both configurations work properly on my side (see components/display-data.js).
                                  Would you please test my example on your side and let me know if there are any specific settings I missed.

                                  Thanks,
                                  Artem

                                • Jon Hodges 08.22.2019

                                  Thank you so much Artem for your response. I didn't forget about the ticket. I'm not able to reproduce the issue with your setup but my table has a lot more config, events attached to it so I'm trying to isolate the defect. I'll come back to you soon

                                • Artem (DevExpress Support) 08.23.2019

                                  Hi,

                                  Thank you for the update. Make sure that you're not using inline functions/objects in the markup. They may also cause unnecessary refreshes.
                                  See our Component Configuration Syntax help section demonstrating the recommended approaches.

                                1 Solution

                                Creation Date Importance Sort by

                                Hi Artem. So I've pinpointed the fix to be the combination of rendering the table async and mostly virtual column rendering. You can actually reproduce my perf issue by removing the virtual column rendering in your example.
                                Thank you so much for making me realise this! That is indeed the perfect use case for virtual rendering of columns.

                                • Artem (DevExpress Support) 08.26.2019

                                  You're welcome. Feel free to contact us in case of further difficulties.