I create and populate UltraDataSource in code that has about 100-200 bands and about 3k of items on various levels. I need to disable column headers on most of the bands but ran into a problem. If I assign my ultraDataSource to grid's DataSource before my data source is populated it takes forever to populate. If I assign it after my datasource is populated grid loads very fast but I can't do myGrid.DisplayLayout.Bands[bandID].ColHeadersVisible = false; while populating because grid doesn't know about my datasource yet. I tried using myGrid.BeginUpdate(); and myGrid.SuspendRowSynchronization(); hoping it would do the trick but no banana. I guess I can iterate bands after datasource is populated and assigned to the grid's datasource but hoping there is an easier way.
You should set the ColHeadersVisible property on the bands inside the InitializeLayout event. This is what the event is specifically designed for. :)