I'm using an UltraWebGrid on a project. I'm defining the BaseTableName and the DataKeyField in the UltraGridBand section of the UltraWebGrid . I'm also doing some formatting on the grid (hiding some of the columns and renaming some of the column headers) with the InitializeLayout event.
The strange thing is that on first load of the page/grid, the actual BaseTableName column names (the names of the fields in SQL table) are showing, which I don't want them to. Then for a few minutes the grid will load fine with the column formatting I'm applying in the InitializeLayout event. But then it reverts to showing the BaseTableName column names.
Is there a way I can fix this? Many thanks appreciated.
If it helps, here's the grid definition:
<igtbl:UltraWebGrid ID="UltraWebGrid1" runat="server" DataKeyField="iExerciseSetID" DataSourceID="SqlDataSource2" EnableAppStyling="True" StyleSetPath="~/css/ig_res" StyleSetName="Appletini"> <Bands> <igtbl:UltraGridBand DataKeyField="iExerciseSetID" BaseTableName="ExerciseSets"> <Columns> <igtbl:UltraGridColumn BaseColumnName="iExerciseSetID" DataType="System.Int32" Hidden="True" IsBound="True" Key="iExerciseSetID"> <Header Caption="iExerciseSetID"> </Header> </igtbl:UltraGridColumn> <igtbl:UltraGridColumn BaseColumnName="iExerciseID" DataType="System.Int32" Hidden="True" IsBound="True" Key="iExerciseID"> <Header Caption="iExerciseID"> <RowLayoutColumnInfo OriginX="1" /> </Header> <Footer> <RowLayoutColumnInfo OriginX="1" /> </Footer> </igtbl:UltraGridColumn> <igtbl:UltraGridColumn BaseColumnName="iReps" DataType="System.Int32" IsBound="True" Key="iReps"> <Header Caption="Reps"> <RowLayoutColumnInfo OriginX="2" /> </Header> <Footer> <RowLayoutColumnInfo OriginX="2" /> </Footer> </igtbl:UltraGridColumn> <igtbl:UltraGridColumn BaseColumnName="iWeight" DataType="System.Int32" IsBound="True" Key="Weight"> <Header Caption="Weight"> <RowLayoutColumnInfo OriginX="3" /> </Header> <Footer> <RowLayoutColumnInfo OriginX="3" /> </Footer> </igtbl:UltraGridColumn> <igtbl:UltraGridColumn CellButtonDisplay="Always" NullText="Remove" Type="Button"> <Header> <RowLayoutColumnInfo OriginX="4" /> </Header> <Footer> <RowLayoutColumnInfo OriginX="4" /> </Footer> </igtbl:UltraGridColumn> </Columns> <AddNewRow View="NotSet" Visible="NotSet"> </AddNewRow> </igtbl:UltraGridBand> </Bands> <DisplayLayout AllowColSizingDefault="Free" AllowDeleteDefault="Yes" AllowSortingDefault="OnClient" AllowUpdateDefault="Yes" BorderCollapseDefault="Separate" HeaderClickActionDefault="SortMulti" Name="UltraWebGrid1" RowHeightDefault="20px" RowSelectorsDefault="No" SelectTypeRowDefault="Extended" StationaryMargins="Header" StationaryMarginsOutlookGroupBy="True" TableLayout="Fixed" Version="4.00" ViewType="OutlookGroupBy"> <FrameStyle BackColor="Window" BorderColor="InactiveCaption" BorderStyle="Solid" BorderWidth="1px"> </FrameStyle> <Pager MinimumPagesForDisplay="2"> <PagerStyle BackColor="LightGray" BorderStyle="Solid" BorderWidth="1px"> <BorderDetails ColorLeft="White" ColorTop="White" WidthLeft="1px" WidthTop="1px" /> </PagerStyle> </Pager> <EditCellStyleDefault BorderStyle="None" BorderWidth="0px"> </EditCellStyleDefault> <FooterStyleDefault BackColor="LightGray" BorderStyle="Solid" BorderWidth="1px"> <BorderDetails ColorLeft="White" ColorTop="White" WidthLeft="1px" WidthTop="1px" /> </FooterStyleDefault> <HeaderStyleDefault BackColor="LightGray" BorderStyle="Solid" HorizontalAlign="Left"> <BorderDetails ColorLeft="White" ColorTop="White" WidthLeft="1px" WidthTop="1px" /> </HeaderStyleDefault> <RowStyleDefault BackColor="Window" BorderColor="Silver" BorderStyle="Solid" BorderWidth="1px"> <Padding Left="3px" /> <BorderDetails ColorLeft="Window" ColorTop="Window" /> </RowStyleDefault> <GroupByRowStyleDefault BackColor="Control" BorderColor="Window"> </GroupByRowStyleDefault> <GroupByBox Hidden="True"> <BoxStyle BackColor="ActiveBorder" BorderColor="Window"> </BoxStyle> </GroupByBox> <AddNewBox Hidden="False"> <BoxStyle BackColor="Window" BorderColor="InactiveCaption" BorderStyle="Solid" BorderWidth="1px"> <BorderDetails ColorLeft="White" ColorTop="White" WidthLeft="1px" WidthTop="1px" /> </BoxStyle> </AddNewBox> <ActivationObject BorderColor="" BorderWidth=""> </ActivationObject> <FilterOptionsDefault> <FilterDropDownStyle BackColor="White" BorderColor="Silver" BorderStyle="Solid" BorderWidth="1px" CustomRules="overflow:auto;" Height="300px" Width="200px"> <Padding Left="2px" /> </FilterDropDownStyle> <FilterHighlightRowStyle BackColor="#151C55" ForeColor="White"> </FilterHighlightRowStyle> <FilterOperandDropDownStyle BackColor="White" BorderColor="Silver" BorderStyle="Solid" BorderWidth="1px" CustomRules="overflow:auto;"> <Padding Left="2px" /> </FilterOperandDropDownStyle> </FilterOptionsDefault> </DisplayLayout> </igtbl:UltraWebGrid>
Try setting AutoGenerateColumns to false on the grid, and you will only see the columns that you specify in the markup.