All our products ship with a lot of functionality that comes with its own UI.
- The toolbars on top of each datagrid have their own UI
- The export comes with its own export type and column picker
- The print comes with the print column picker and the print preview window
- The user settings persistence mechanism comes with its own popup to save and set preferences
- The multi column sort picker in Ultimate comes with its own UI
So, that said, the first thing you should know is that we have built in a mechanism that allows you to customize this UI, whether it be for localization purposes, or for customization of functionality. There are various blog posts that talk about individual aspects of how to customize each of these UIâ€™s, but this blog post serves as a one stop shop for your requirements around customization of each of these UIS. There are two components in the attached project, first one demonstrates how to customize the UI for each of the above for the Ultimate DataGrid (class name FlexDataGrid). The Dashboard (not shown here) follows similar mechanism, however, since it is based on Spark Skinning, the entry point to make changes is the custom skin. The second example shows the same process for Classic (ExtendedDataGrid) and Advanced(ExtendedAdvancedDataGrid) DataGrids. Spark (ExtendedSparkDataGrid) follows a similar mechanism. Under the hood, all our products share the same code base to do most of the grunt work for the features listed above. The only difference is that with Ultimate/Dashboard, we started to package all of the UI into the core library for convenience, which we did not do for Classic. This was primarily done for backwards compatibility, since most of the Classic folks are "used to" having these assets outside.
And below is the version of the project for the new 2.9 release: