If that is the use case I would have built that data grid and columns on the fly in ActionScript. Why bother having columns in memory that you don't use?
--- In [email protected], "bhaq1972" <mbhaque@...> wrote: > > The problem doesn't exist if the code is executed in the preintialize or > creationComplete event. However, I didn't want to mention that because it > takes the focus away from what looks like a bug in initialize. Why would one > column give a runtime error and the other not? > Halo datagrid doesnt have this problem. > > In our scenario, some columns have no relevance to certain customers. Instead > of removing the column from the mxml, we store the column info (in this case > make invisible) in the database. > During the datagrid initialze we make it invisible. The creationcomplete > event would be too late because by then the column would have rendered (for a > split second). > > Preinitialize would be ok...but other parts of my code (unrelated to this > problem) are failing because preinitialize is too early. i can't bare any > more code rewrites(but i suppose it keeps me in a job). > > > > > --- In [email protected], "valdhor" <valdhorlists@> wrote: > > > > The column probably hasn't been created yet. Try the creationcomplete event > > of the datagrid. > > > > --- In [email protected], "bhaq1972" <mbhaque@> wrote: > > > > > > I get a runtime error when I set the gridcolumn.visible property during a > > > datagrid initialize event. There is no problem's > > > if its the first gridcolumn. Looks like a bug? > > > > > > Can anyone suggest a workaround? > > > > > > > > > <s:DataGrid initialize="makeColumnInvisible()"> > > > <s:columns> > > > <s:ArrayList> > > > <s:GridColumn id="gc0" dataField="col0" headerText="col0"/> > > > <s:GridColumn id="gc1" dataField="col1" headerText="col0"/> > > > > > > .. > > > public function makeColumnInvisible():void > > > { > > > gc1.visible = false; // causes a RTE > > > gc0.visible = false; // doesnt give a problem > > > .. > > > > > > > > > RangeError: Error #1125: The index 1 is out of range 0. > > > at > > > spark.components.gridClasses::GridDimensions/setTypicalCellWidth()[E:\dev\hero_private\frameworks\projects\spark\src\spark\components\gridClasses\GridDimensions.as:1325] > > > at > > > spark.components.gridClasses::GridDimensions/columns_visibleChangedHandler()[E:\dev\hero_private\frameworks\projects\spark\src\spark\components\gridClasses\GridDimensions.as:1840] > > > at > > > spark.components.gridClasses::GridDimensions/columnsCollectionChanged()[E:\dev\hero_private\frameworks\projects\spark\src\spark\components\gridClasses\GridDimensions.as:1800] > > > at > > > spark.components::Grid/columns_collectionChangeHandler()[E:\dev\hero_private\frameworks\projects\spark\src\spark\components\Grid.as:4429] > > > at flash.events::EventDispatcher/dispatchEventFunction() > > > at flash.events::EventDispatcher/dispatchEvent() > > > at spark.components.gridClasses::GridColumn/set > > > visible()[E:\dev\hero_private\frameworks\projects\spark\src\spark\components\gridClasses\GridColumn.as:1564] > > > ... > > > > > >

