Hi Gaurav,
If by handling varying number of column you mean show/hide columns depending of some criteria, that should be possible.
If you mean having a different set of columns because different kind of data, that's for sure technically possible with the widget itself (in pure javascript / jQuery), but it's not a standard / out-of-the-box feature. So the wicket implementation does not support it. I need to have a deeper look to evaluate the feasibility...
As for the freeze column, it should not be a problem to integrate (also locked and lockable), but it's unfortunately not currently available... Please open an issue if you need it.
Thanks and best regards,
Sebastien