This is a migrated thread and some comments may be shown as answers.

Show/Hide columns not working properly.

2 Answers 112 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Jon
Top achievements
Rank 1
Jon asked on 09 Feb 2011, 07:56 PM
I have a grid that has two sets of columns. I want to hide or show (i.e. Display=false) one set based on the value of a droplist (which has only two possible values) during execution using client-side script. The problem I'm having is that the value of the cellIndex (i.e. element.cellIndex) for the hidden columns has the same value for each of the columns in the second set (which initially have Display="false" set, since they are to be hidden initially). I originally tried using element.uniqueNumber, but this value changes dynamically (Note: This does work initially). I found other posts that suggested using element.cellIndex instead, so hence my efforts here. FWIW, I am also using jQuery 1.4.4 in addition to the Ajax supported intrinsically by the Telerik controls.

Here is the JS I use to Toggle the columns (called when the droplist changes):

var actualColNames = "ActualTotalStaff", "ActualProgramTeam", "ActualSupportTeam"];
var projColNames = ["ProjectedTotalStaff", "ProjectedProgramTeam", "ProjectedSupportTeam"];
  
//  This function toggles the display of Actual and Projected columns in the grid based on the
//  selection in the Summary droplist.
function ToggleColumns()
{
    var masterTable = null;
    var selection = "";
    var cols = [];
    var numColumns = 0;
    var element = null;
    var nameIndex = -1;
    var colIndex = -1;
    var colName = ""
    var displayIndex =-1
    var isActual = false;
    var isProjected = false;
      
    // Droplist value: Actual or Projected
    selection = $('option:selected')[0].text;
    masterTable = $find('<%=RadGrid_StaffBreakout.ClientID %>').get_masterTableView();
      
    if (masterTable)
    {
        isActual = (selection == "Actual");
        isProjected = !isActual;
        cols = masterTable.get_columns();
        numColumns = cols.length;
  
        $(cols).each(function()
        {
            element = this.get_element();
            colIndex = element.cellIndex;    //this._element.uniqueNumber;
            colName = this._data.UniqueName;
  
            //  Find this column name in the Projected column name array.
            nameIndex = $.inArray(colName, projColNames);
  
            if ((nameIndex > -1) && (colIndex <= numColumns))
            {
                //  If Actual is selected, then hide this Projected column.
                (isActual ? masterTable.hideColumn(colIndex) : masterTable.showColumn(colIndex));
            }
            else
            {
                //  Find this column name in the Actual column name array.
                nameIndex = $.inArray(colName, actualColNames);
  
                if ((nameIndex > -1) && (colIndex <= numColumns))
                {
                    //  If Projected is selected, then hide this Actual column.
                    (isProjected ? masterTable.hideColumn(colIndex) : masterTable.showColumn(colIndex));
                }
            }
        });
    }
}

Apologies, but the grid markup is quite lengthy. The Actual set works fine for showing/hiding, it's the Projected set that doesn't work properly.

<telerik:radgrid id="RadGrid_StaffBreakout" runat="server" 
    autogeneratecolumns="False" allowsorting="True" gridlines="None" 
    insertitempageindexaction="ShowItemOnFirstPage" 
   allowpaging="True" skin="Windows7" horizontalalign="Center">
    <ClientSettings ClientEvents-OnMasterTableViewCreated="OnMasterTableViewCreatedHandler"
        Resizing-AllowColumnResize="true" ClientEvents-OnCommand="OnCommandHandler" EnableRowHoverStyle="true">
        <ClientEvents OnMasterTableViewCreated="OnMasterTableViewCreatedHandler" OnCommand="OnCommandHandler"></ClientEvents>
        <Resizing AllowColumnResize="True"></Resizing>
    </ClientSettings>
    <ItemStyle HorizontalAlign="Center" BorderWidth="0px" />
    <MasterTableView HorizontalAlign="Center" GridLines="None" EditMode="InPlace" CommandItemDisplay="TopAndBottom" >
        <SortExpressions>
            <telerik:GridSortExpression FieldName="ScheduleDate" SortOrder="Descending" />
        </SortExpressions>
        <CommandItemSettings ExportToPdfText="Export to Pdf"
            ShowExportToExcelButton="True" ShowExportToPdfButton="True">
        </CommandItemSettings>           
        <Columns>
            <telerik:GridBoundColumn DataField="StaffBreakoutId" DataType="System.Int32" 
                ShowFilterIcon="False" SortExpression="StaffBreakoutId" 
                UniqueName="StaffBreakoutId" Visible="False">                
            </telerik:GridBoundColumn>
            <telerik:GridEditCommandColumn>
                <HeaderStyle Width="90px" />
            </telerik:GridEditCommandColumn>
            <telerik:GridTemplateColumn DataField="ScheduleDate" HeaderButtonType="None" 
                HeaderText="Day" SortExpression="ScheduleDate" UniqueName="ScheduleDate">
                <HeaderStyle Width="125px" />
                <EditItemTemplate>
                    <telerik:RadDatePicker ID="RadDatePicker_ScheduleDate" UniqueName="RadDatePicker_ScheduleDate" runat="server"
                        DbSelectedDate= '<%# Bind("ScheduleDate") %>' Width="125px"
                        Skin="Outlook">
                    </telerik:RadDatePicker>
                    <span style="color:Red;"><asp:RequiredFieldValidator ID="RequiredFieldValidator_ScheduleDate" runat="server" errormessage="*" ControlToValidate="RadDatePicker_ScheduleDate"></asp:RequiredFieldValidator></span>
                </EditItemTemplate>
                <ItemTemplate>
                    <asp:Label ID="ScheduleDateLabel" runat="server" 
                        Text='<%# Eval("ScheduleDate", "{0:d}") %>'></asp:Label>
                </ItemTemplate>
            </telerik:GridTemplateColumn>
            <telerik:GridTemplateColumn UniqueName="ActualTotalStaff" SortExpression="ActualTotalStaffBI"  InitializeTemplatesFirst="false">
                <HeaderStyle Width="105px" />
                <HeaderTemplate>
                    <table id="totalStaffHeader" cellpadding="1" cellspacing="1" width="100%" style="text-align:center;">
                        <tr>
                            <td colspan="2"><b>TOTAL STAFF</b></td>
                        </tr>
                        <tr></tr>
                        <tr>
                            <td style="width:50%;">BI</td>
                            <td style="width:50%;">DE</td>
                        </tr>
                    </table>
                </HeaderTemplate>
                <EditItemTemplate>
                    <table id="actualStaffTableEdit" cellpadding="1" cellspacing="1" width="100%">
                        <tr>
                            <td style="width:50%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ActualTotalStaffBI" runat="server" 
                                    DbValue='<%# Bind("ActualTotalStaffBI", "{0:n1}") %>' Width="30px">
                                </telerik:RadNumericTextBox>
                                <span style="color:Red;"><asp:RequiredFieldValidator id="RequiredFieldValidator_ActualTotalStaffBI" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ActualTotalStaffBI">
                                    </asp:RequiredFieldValidator></span>
                            </td>
                            <td style="width:50%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ActualTotalStaffDE" runat="server" DbValue='<%# Bind("ActualTotalStaffDE", "{0:n1}") %>'
                                    Width="30px"></telerik:RadNumericTextBox>
                                <span style="color:Red;"><asp:RequiredFieldValidator id="RequiredFieldValidator_ActualTotalStaffDE" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ActualTotalStaffDE">
                                </asp:RequiredFieldValidator></span>
                            </td>
                        </tr>
                    </table>
                </EditItemTemplate>
                <ItemTemplate>
                    <table id="totalStaffItem" cellpadding="1" cellspacing="1" width="100%" style="text-align:center;">
                        <tr>
                            <td style="width: 50%; border-bottom: none;"><%#DataBinder.Eval(Container.DataItem, "ActualTotalStaffBI", "{0:n1}")%></td>
                            <td style="width:50%; border-bottom: none;" ><%#DataBinder.Eval(Container.DataItem, "ActualTotalStaffDE", "{0:n1}")%></td>
                        </tr>
                    </table>
                </ItemTemplate>
            </telerik:GridTemplateColumn>
            <telerik:GridTemplateColumn UniqueName="ActualProgramTeam" InitializeTemplatesFirst="false"
                SortExpression="ActualProgramTeamBI">
                <HeaderStyle Width="105px" />
                <HeaderTemplate>
                    <table id="actualProgramTeamHeader" cellpadding="1" cellspacing="1" width="100%"
                        style="text-align: center;">
                        <tr>
                            <td colspan="2"><b>PROGRAM TEAM</b></td>
                        </tr>
                        <tr>
                            <td colspan="2"><b>ROCKVILLE</b></td>
                        </tr>
                        <tr>
                            <td style="width:50%;">BI</td>
                            <td style="width:50%;">DE</td>
                        </tr>
                    </table>
                </HeaderTemplate>
                <EditItemTemplate>
                    <table id"actualProgramTeamEdit" cellpadding="1" cellspacing="1" width="100%">
                        <tr>
                            <td style="width:50%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ActualProgramTeamBI" runat="server" DbValue='<%# Bind("ActualProgramTeamBI", "{0:n1}") %>'
                                    Width="30px"></telerik:RadNumericTextBox>
                                <span style="color:Red;"><asp:RequiredFieldValidator id="RequiredFieldValidator_ActualProgramTeamBI" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ActualProgramTeamBI">
                                </asp:RequiredFieldValidator></span>
                            </td>
                            <td style="width:50%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ActualProgramTeamDE" runat="server" DbValue='<%# Bind("ActualProgramTeamDE", "{0:n1}") %>' Width="30px"></telerik:RadNumericTextBox>
                                <span style="color:Red;"><asp:RequiredFieldValidator id="RequiredFieldValidator_ActualProgramTeamDE" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ActualProgramTeamDE">
                                </asp:RequiredFieldValidator></span>
                            </td>
                        </tr>
                    </table>
                </EditItemTemplate>
                <ItemTemplate>
                    <table id="totalStaffItem" cellpadding="1" cellspacing="1" width="100%" style="text-align: center;">
                        <tr>
                            <td style="width: 50%; border-bottom: none;">
                                <%#DataBinder.Eval(Container.DataItem, "ActualProgramTeamBI", "{0:n1}")%>
                            </td>
                            <td style="width: 50%; border-bottom: none;">
                                <%#DataBinder.Eval(Container.DataItem, "ActualProgramTeamDE", "{0:n1}")%>
                            </td>
                        </tr>
                    </table>
                </ItemTemplate>
            </telerik:GridTemplateColumn>
            <telerik:GridTemplateColumn  UniqueName="ActualSupportTeam" InitializeTemplatesFirst="false" 
                SortExpression="ActualBISupportTeamRI">
                <HeaderStyle Width="380px" />
                <HeaderTemplate>
                    <table id="supportTeamsHeader" cellpadding="1" cellspacing="1" width="100%" style="text-align: center;">
                        <tr>
                            <td colspan="7" align="center">
                                <b>SUPPORT TEAMS</b>
                            </td>
                        </tr>
                        <tr style="text-align:center;">
                            <td style="width: 14%;"><b>RI</b></td>
                            <td style="width: 14%;"><b>TX</b></td>
                            <td style="width: 14%;"><b>MD</b></td>
                            <td style="width: 14%;"><b>RI</b></td>
                            <td style="width: 14%;"><b>TX</b></td>
                            <td style="width: 14%;"><b>MD</b></td>
                            <td style="width: 16%;"><b>TOTAL</b></td>
                       </tr>
                        <tr>
                            <td style="width: 14%;">BI</td>
                            <td style="width: 14%;">BI</td>
                            <td style="width: 14%;">BI</td>
                            <td style="width: 14%;">DE</td>
                            <td style="width: 14%;">DE</td>
                            <td style="width: 14%;">DE</td>
                            <td style="width: 16%;">     </td>
                        </tr>
                    </table>
                </HeaderTemplate>
                <EditItemTemplate>
                    <table id="supportTeamsEdit" cellpadding="1" cellspacing="1" width="100%">
                        <tr>
                            <td style="width: 14%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ActualBISupportTeamRI" runat="server" DbValue='<%# Bind("ActualBISupportTeamRI", "{0:n1}") %>'
                                    Width="30px">
                                </telerik:RadNumericTextBox>
                                <span style="color: Red;">
                                    <asp:RequiredFieldValidator id="RequiredFieldValidator_ActualBISupportTeamRI" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ActualBISupportTeamRI">
                                    </asp:RequiredFieldValidator></span>
                            </td>
                            <td style="width: 14%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ActualBISupportTeamTX" runat="server" DbValue='<%# Bind("ActualBISupportTeamTX", "{0:n1}") %>'
                                    Width="30px">
                                </telerik:RadNumericTextBox>
                                <span style="color: Red;">
                                    <asp:RequiredFieldValidator id="RequiredFieldValidator_ActualBISupportTeamTX" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ActualBISupportTeamTX">
                                    </asp:RequiredFieldValidator></span>
                            </td>
                            <td style="width: 14%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ActualBISupportTeamMD" runat="server" DbValue='<%# Bind("ActualBISupportTeamMD", "{0:n1}") %>'
                                    Width="30px">
                                </telerik:RadNumericTextBox>
                                <span style="color: Red;">
                                    <asp:RequiredFieldValidator id="RequiredFieldValidator_ActualBISupportTeamMD" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ActualBISupportTeamMD">
                                    </asp:RequiredFieldValidator></span>
                            </td>
                            <td style="width: 14%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ActualDESupportTeamRI" runat="server" DbValue='<%# Bind("ActualDESupportTeamRI", "{0:n1}") %>'
                                    Width="30px">
                                </telerik:RadNumericTextBox>
                                <span style="color: Red;">
                                    <asp:RequiredFieldValidator id="RequiredFieldValidator_ActualDESupportTeamRI" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ActualDESupportTeamRI">
                                    </asp:RequiredFieldValidator></span>
                            </td>
                            <td style="width: 14%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ActualDESupportTeamTX" runat="server" DbValue='<%# Bind("ActualDESupportTeamTX", "{0:n1}") %>'
                                    Width="30px">
                                </telerik:RadNumericTextBox>
                                <span style="color: Red;">
                                    <asp:RequiredFieldValidator id="RequiredFieldValidator_ActualDESupportTeamTX" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ActualDESupportTeamTX">
                                    </asp:RequiredFieldValidator></span>
                            </td>
                            <td style="width: 14%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ActualDESupportTeamMD" runat="server" DbValue='<%# Bind("ActualDESupportTeamMD", "{0:n1}") %>'
                                    Width="30px">
                                </telerik:RadNumericTextBox>
                                <span style="color: Red;">
                                    <asp:RequiredFieldValidator id="RequiredFieldValidator_ActualDESupportTeamMD" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ActualDESupportTeamMD">
                                    </asp:RequiredFieldValidator></span>
                            </td>
                            <td style="width: 16%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ActualSupportTeamTotal" runat="server" DbValue='<%# Bind("ActualSupportTeamTotal", "{0:n1}") %>'
                                    Width="30px">
                                </telerik:RadNumericTextBox>
                                <span style="color: Red;">
                                    <asp:RequiredFieldValidator id="RequiredFieldValidator_ActualSupportTeamTotal" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ActualSupportTeamTotal">
                                    </asp:RequiredFieldValidator></span>
                            </td>
                        </tr>
                    </table>
                </EditItemTemplate>
                <ItemTemplate>
                    <table id="supportTeamsItem" cellpadding="1" cellspacing="1" width="100%" style="text-align: center;">
                        <tr>
                            <td style="width: 14%; border-bottom: none;"><%#Eval("ActualBISupportTeamRI", "{0:n1}")%></td>
                            <td style="width: 14%; border-bottom: none;"><%#Eval("ActualBISupportTeamTX", "{0:n1}")%></td>
                            <td style="width: 14%; border-bottom: none;"><%#Eval("ActualBISupportTeamMD", "{0:n1}")%></td>
                            <td style="width: 14%; border-bottom: none;"><%#Eval("ActualDESupportTeamRI", "{0:n1}")%></td>
                            <td style="width: 14%; border-bottom: none;"><%#Eval("ActualDESupportTeamTX", "{0:n1}")%></td>
                            <td style="width: 14%; border-bottom: none;"><%#Eval("ActualDESupportTeamMD", "{0:n1}")%></td>
                            <td style="width: 16%; border-bottom: none;"><%#Eval("ActualSupportTeamTotal", "{0:n1}")%></td>
                        </tr>
                    </table>
                </ItemTemplate>
            </telerik:GridTemplateColumn>
            <telerik:GridTemplateColumn UniqueName="ProjectedTotalStaff" SortExpression="ProjectedTotalStaffBI" InitializeTemplatesFirst="false" Display="false">
                <HeaderStyle Width="105px" />
                <HeaderTemplate>
                    <table id="projectedTotalStaffHeader" cellpadding="1" cellspacing="1" width="100%" style="text-align:center;">
                        <tr>
                            <td colspan="2"><b>TOTAL STAFF</b></td>
                        </tr>
                        <tr></tr>
                        <tr>
                            <td style="width:50%;">BI</td>
                            <td style="width:50%;">DE</td>
                        </tr>
                    </table>
                </HeaderTemplate>
                <EditItemTemplate>
                    <table id="projectedTotalStaffEdit" cellpadding="1" cellspacing="1" width="100%">
                        <tr>
                            <td style="width:50%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ProjectedTotalStaffBI" runat="server" 
                                    DbValue='<%# Bind("ProjectedTotalStaffBI", "{0:n1}") %>' Width="30px">
                                </telerik:RadNumericTextBox>
                                <span style="color:Red;"><asp:RequiredFieldValidator id="RequiredFieldValidator_ProjectedTotalStaffBI" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ProjectedTotalStaffBI">
                                    </asp:RequiredFieldValidator></span>
                            </td>
                            <td style="width:50%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ProjectedTotalStaffDE" runat="server" DbValue='<%# Bind("ProjectedTotalStaffDE", "{0:n1}") %>'
                                    Width="30px"></telerik:RadNumericTextBox>
                                <span style="color:Red;"><asp:RequiredFieldValidator id="RequiredFieldValidator_ProjectedTotalStaffDE" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ProjectedTotalStaffDE">
                                </asp:RequiredFieldValidator></span>
                            </td>
                        </tr>
                    </table>
                </EditItemTemplate>
                <HeaderStyle Width="50px" />
                <ItemTemplate>
                    <table id="projectedTotalStaffItem" cellpadding="1" cellspacing="1" width="100%" style="text-align:center;">
                        <tr>
                            <td style="width: 50%; border-bottom: none;"><%#DataBinder.Eval(Container.DataItem, "ProjectedTotalStaffBI", "{0:n1}")%></td>
                            <td style="width:50%; border-bottom: none;" ><%#DataBinder.Eval(Container.DataItem, "ProjectedTotalStaffDE", "{0:n1}")%></td>
                        </tr>
                    </table>
                </ItemTemplate>
            </telerik:GridTemplateColumn>
            <telerik:GridTemplateColumn UniqueName="ProjectedProgramTeam" Display="false" SortExpression="ProjectedProgramTeamBI" InitializeTemplatesFirst="false">
                <HeaderStyle Width="120px" />
                <HeaderTemplate>
                    <table id="projectedProgramTeamHeader" cellpadding="1" cellspacing="1" width="100%"
                        style="text-align: center;">
                        <tr>
                            <td colspan="2"><b>PROGRAM TEAM</b></td>
                        </tr>
                        <tr>
                            <td colspan="2"><b>ROCKVILLE</b></td>
                        </tr>
                        <tr>
                            <td style="width:50%;">BI</td>
                            <td style="width:50%;">DE</td>
                        </tr>
                    </table>
                </HeaderTemplate>
                <EditItemTemplate>
                    <table id"projectedProgramTeamEdit" cellpadding="1" cellspacing="1" width="100%">
                        <tr>
                            <td style="width:50%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ProjectedProgramTeamBI" runat="server" DbValue='<%# Bind("ProjectedProgramTeamBI", "{0:n1}") %>'
                                    Width="30px"></telerik:RadNumericTextBox>
                                <span style="color:Red;"><asp:RequiredFieldValidator id="RequiredFieldValidator_ProjectedProgramTeamBI" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ProjectedProgramTeamBI">
                                </asp:RequiredFieldValidator></span>
                            </td>
                            <td style="width:50%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ProjectedProgramTeamDE" runat="server" DbValue='<%# Bind("ProjectedProgramTeamDE", "{0:n1}") %>' Width="30px"></telerik:RadNumericTextBox>
                                <span style="color:Red;"><asp:RequiredFieldValidator id="RequiredFieldValidator_ProjectedProgramTeamDE" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ProjectedProgramTeamDE">
                                </asp:RequiredFieldValidator></span>
                            </td>
                        </tr>
                    </table>
                </EditItemTemplate>
                <ItemTemplate>
                    <table id="projectedProgramTeamItem" cellpadding="1" cellspacing="1" width="100%" style="text-align: center;">
                        <tr>
                            <td style="width: 50%; border-bottom: none;">
                                <%#DataBinder.Eval(Container.DataItem, "ProjectedProgramTeamBI", "{0:n1}")%>
                            </td>
                            <td style="width: 50%; border-bottom: none;">
                                <%#DataBinder.Eval(Container.DataItem, "ProjectedProgramTeamDE", "{0:n1}")%>
                            </td>
                        </tr>
                    </table>
                </ItemTemplate>
            </telerik:GridTemplateColumn>
            <telerik:GridTemplateColumn UniqueName="ProjectedSupportTeam" Display="false" SortExpression="ProjectedBISupportTeamRI" InitializeTemplatesFirst="false">
                <HeaderStyle Width="380px" />
                <HeaderTemplate>
                    <table id="projectedSupportTeamHeader" cellpadding="1" cellspacing="1" width="100%" style="text-align: center;">
                        <tr>
                            <td colspan="7" align="center">
                                <b>SUPPORT TEAMS</b>
                            </td>
                        </tr>
                        <tr style="text-align:center;">
                            <td style="width: 14%;"><b>RI</b></td>
                            <td style="width: 14%;"><b>TX</b></td>
                            <td style="width: 14%;"><b>MD</b></td>
                            <td style="width: 14%;"><b>RI</b></td>
                            <td style="width: 14%;"><b>TX</b></td>
                            <td style="width: 14%;"><b>MD</b></td>
                            <td style="width: 16%;"><b>TOTAL</b></td>
                       </tr>
                        <tr>
                            <td style="width: 14%;">BI</td>
                            <td style="width: 14%;">BI</td>
                            <td style="width: 14%;">BI</td>
                            <td style="width: 14%;">DE</td>
                            <td style="width: 14%;">DE</td>
                            <td style="width: 14%;">DE</td>
                            <td style="width: 16%;">     </td>
                        </tr>
                    </table>
                </HeaderTemplate>
                <EditItemTemplate>
                    <table id="projectedSupportTeamEdit" cellpadding="1" cellspacing="1" width="100%">
                        <tr>
                            <td style="width: 14%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ProjectedBISupportTeamRI" runat="server" DbValue='<%# Bind("ProjectedBISupportTeamRI", "{0:n1}") %>'
                                    Width="29px">
                                </telerik:RadNumericTextBox>
                                <span style="color: Red;">
                                    <asp:RequiredFieldValidator id="RequiredFieldValidator_ProjectedBISupportTeamRI" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ProjectedBISupportTeamRI">
                                    </asp:RequiredFieldValidator></span>
                            </td>
                            <td style="width: 14%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ProjectedBISupportTeamTX" runat="server" DbValue='<%# Bind("ProjectedBISupportTeamTX", "{0:n1}") %>'
                                    Width="29px">
                                </telerik:RadNumericTextBox>
                                <span style="color: Red;">
                                    <asp:RequiredFieldValidator id="RequiredFieldValidator_ProjectedBISupportTeamTX" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ProjectedBISupportTeamTX">
                                    </asp:RequiredFieldValidator></span>
                            </td>
                            <td style="width: 14%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ProjectedBISupportTeamMD" runat="server" DbValue='<%# Bind("ProjectedBISupportTeamMD", "{0:n1}") %>'
                                    Width="29px">
                                </telerik:RadNumericTextBox>
                                <span style="color: Red;">
                                    <asp:RequiredFieldValidator id="RequiredFieldValidator_ProjectedBISupportTeamMD" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ProjectedBISupportTeamMD">
                                    </asp:RequiredFieldValidator></span>
                            </td>
                            <td style="width: 14%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ProjectedDESupportTeamRI" runat="server" DbValue='<%# Bind("ProjectedDESupportTeamRI", "{0:n1}") %>'
                                    Width="29px">
                                </telerik:RadNumericTextBox>
                                <span style="color: Red;">
                                    <asp:RequiredFieldValidator id="RequiredFieldValidator_ProjectedDESupportTeamRI" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ProjectedDESupportTeamRI">
                                    </asp:RequiredFieldValidator></span>
                            </td>
                            <td style="width: 14%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ProjectedDESupportTeamTX" runat="server" DbValue='<%# Bind("ProjectedDESupportTeamTX", "{0:n1}") %>'
                                    Width="29px">
                                </telerik:RadNumericTextBox>
                                <span style="color: Red;">
                                    <asp:RequiredFieldValidator id="RequiredFieldValidator_ProjectedDESupportTeamTX" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ProjectedDESupportTeamTX">
                                    </asp:RequiredFieldValidator></span>
                            </td>
                            <td style="width: 14%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ProjectedDESupportTeamMD" runat="server" DbValue='<%# Bind("ProjectedDESupportTeamMD", "{0:n1}") %>'
                                    Width="29px">
                                </telerik:RadNumericTextBox>
                                <span style="color: Red;">
                                    <asp:RequiredFieldValidator id="RequiredFieldValidator_ProjectedDESupportTeamMD" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ProjectedDESupportTeamMD">
                                    </asp:RequiredFieldValidator></span>
                            </td>
                            <td style="width: 16%; border-bottom: none;">
                                <telerik:RadNumericTextBox ID="TextBox_ProjectedSupportTeamTotal" runat="server" DbValue='<%# Bind("ProjectedSupportTeamTotal", "{0:n1}") %>'
                                    Width="36px">
                                </telerik:RadNumericTextBox>
                                <span style="color: Red;">
                                    <asp:RequiredFieldValidator id="RequiredFieldValidator_ProjectedSupportTeamTotal" runat="server"
                                        errormessage="*" controltovalidate="TextBox_ProjectedSupportTeamTotal">
                                    </asp:RequiredFieldValidator></span>
                            </td>
                        </tr>
                    </table>
                </EditItemTemplate>
                <ItemTemplate>
                    <table id="projectedSupportTeamItem" cellpadding="1" cellspacing="1" width="100%" style="text-align: center;">
                        <tr>
                            <td style="width: 14%; border-bottom: none;"><%#Eval("ProjectedBISupportTeamRI", "{0:n1}")%></td>
                            <td style="width: 14%; border-bottom: none;"><%#Eval("ProjectedBISupportTeamTX", "{0:n1}")%></td>
                            <td style="width: 14%; border-bottom: none;"><%#Eval("ProjectedBISupportTeamMD", "{0:n1}")%></td>
                            <td style="width: 14%; border-bottom: none;"><%#Eval("ProjectedDESupportTeamRI", "{0:n1}")%></td>
                            <td style="width: 14%; border-bottom: none;"><%#Eval("ProjectedDESupportTeamTX", "{0:n1}")%></td>
                            <td style="width: 14%; border-bottom: none;"><%#Eval("ProjectedDESupportTeamMD", "{0:n1}")%></td>
                            <td style="width: 16%; border-bottom: none;"><%#Eval("ProjectedSupportTeamTotal", "{0:n1}")%></td>
                        </tr>
                    </table>
                </ItemTemplate>
            </telerik:GridTemplateColumn>
<%--            <telerik:GridTemplateColumn DataField="ProdActualBICasesClosed" Display="False" 
                HeaderText="Total" SortExpression="ProdActualBICasesClosed" 
                UniqueName="ProdActualBICasesClosed">
                <HeaderStyle Width="0px" />
                <EditItemTemplate>
                    <telerik:RadNumericTextBox ID="TextBox_ProdActualBICasesClosed" runat="server" DbValue='<%# Bind("ProdActualBICasesClosed", "{0:n1}") %>'
                        Width="30px"></telerik:RadNumericTextBox>
                    <span style="color:Red;"><asp:RequiredFieldValidator id="RequiredFieldValidator_ProdActualBICasesClosed" runat="server"
                            errormessage="*" controltovalidate="TextBox_ProdActualBICasesClosed">
                    </asp:RequiredFieldValidator></span>
                </EditItemTemplate>
                <ItemTemplate>
                    <asp:Label ID="ProdActualBICasesClosedLabel" runat="server" 
                        Text='<%# Eval("ProdActualBICasesClosed", "{0:n1}") %>' Width="30px" ></asp:Label>
                </ItemTemplate>
            </telerik:GridTemplateColumn>
            <telerik:GridTemplateColumn DataField="ProdProjectedBICasesClosed" 
                Display="False" HeaderText="Total" SortExpression="ProdProjectedBICasesClosed" 
                UniqueName="ProdProjectedBICasesClosed">
                <HeaderStyle Width="0px" />
                <EditItemTemplate>
                    <telerik:RadNumericTextBox ID="TextBox_ProdProjectedBICasesClosed" runat="server"
                        DbValue='<%# Bind("ProdProjectedBICasesClosed", "{0:n1}") %>' Width="30px"></telerik:RadNumericTextBox>
                    <span style="color:Red;"><asp:RequiredFieldValidator id="RequiredFieldValidator_ProdProjectedBICasesClosed"
                            runat="server" errormessage="*" controltovalidate="TextBox_ProdProjectedBICasesClosed">
                    </asp:RequiredFieldValidator></span>
                </EditItemTemplate>
                <ItemTemplate>
                    <asp:Label ID="ProdProjectedBICasesClosedLabel" runat="server" 
                        Text='<%# Eval("ProdProjectedBICasesClosed", "{0:n1}") %>' ></asp:Label>
                </ItemTemplate>
            </telerik:GridTemplateColumn>
            <telerik:GridTemplateColumn DataField="ProdActualDECasesClosed" Display="False" 
                HeaderText="Total" SortExpression="ProdActualDECasesClosed" 
                UniqueName="ProdActualDECasesClosed">
                <HeaderStyle Width="0px" />
                <EditItemTemplate>
                    <telerik:RadNumericTextBox ID="TextBox_ProdActualDECasesClosed" runat="server" DbValue='<%# Bind("ProdActualDECasesClosed", "{0:n1}") %>'
                        Width="30px"></telerik:RadNumericTextBox>
                    <span style="color:Red;"><asp:RequiredFieldValidator id="RequiredFieldValidator_ProdActualDECasesClosed" runat="server"
                            errormessage="*" controltovalidate="TextBox_ProdActualDECasesClosed">
                    </asp:RequiredFieldValidator></span>
                </EditItemTemplate>
                <ItemTemplate>
                    <asp:Label ID="ProdActualDECasesClosedLabel" runat="server" 
                        Text='<%# Eval("ProdActualDECasesClosed", "{0:n1}") %>' ></asp:Label>
                </ItemTemplate>
            </telerik:GridTemplateColumn>
            <telerik:GridTemplateColumn DataField="ProdProjectedDECasesClosed" 
                Display="False" HeaderText="Total" SortExpression="ProdProjectedDECasesClosed" 
                UniqueName="ProdProjectedDECasesClosed">
                <HeaderStyle Width="0px" />
                <EditItemTemplate>
                    <telerik:RadNumericTextBox ID="TextBox_ProdProjectedDECasesClosed" runat="server"
                        DbValue='<%# Bind("ProdProjectedDECasesClosed", "{0:n1}") %>' ></telerik:RadNumericTextBox>
                    <span style="color:Red;"><asp:RequiredFieldValidator id="RequiredFieldValidator_ProdProjectedDECasesClosed"
                            runat="server" errormessage="*" controltovalidate="TextBox_ProdProjectedDECasesClosed">
                    </asp:RequiredFieldValidator></span>
                </EditItemTemplate>
                <ItemTemplate>
                    <asp:Label ID="ProdProjectedDECasesClosedLabel" runat="server" 
                        Text='<%# Eval("ProdProjectedDECasesClosed", "{0:n1}") %>'></asp:Label>
                </ItemTemplate>
            </telerik:GridTemplateColumn>       
--%>        </Columns>
        <EditFormSettings>
        <EditColumn UniqueName="EditCommandColumn1"></EditColumn>
        </EditFormSettings>
        <ItemStyle Font-Bold="False" Font-Italic="False" Font-Overline="False" 
            Font-Strikeout="False" Font-Underline="False" HorizontalAlign="Center" 
            Wrap="True" VerticalAlign="Middle" />
        <AlternatingItemStyle Font-Bold="False" Font-Italic="False" 
            Font-Overline="False" Font-Strikeout="False" Font-Underline="False" 
            HorizontalAlign="Center" Wrap="True" VerticalAlign="Middle" />
        <EditItemStyle Font-Bold="False" Font-Italic="False" Font-Overline="False" 
            Font-Strikeout="False" Font-Underline="False" HorizontalAlign="Center" 
            Wrap="True" VerticalAlign="Middle" />
        <PagerStyle Font-Bold="False" Font-Italic="False" Font-Overline="False" 
            Font-Strikeout="False" Font-Underline="False" HorizontalAlign="Center" 
            VerticalAlign="Middle" Wrap="True" AlwaysVisible="True" />
        <HeaderStyle Font-Bold="False" Font-Italic="False" Font-Overline="False" 
            Font-Strikeout="False" Font-Underline="False" HorizontalAlign="Center" 
            Wrap="True" VerticalAlign="Bottom" />
    </MasterTableView>
    <HeaderStyle BorderStyle="None" />
</telerik:RadGrid>

I've also attached snapshots showing how both the Actual (correct) and Projected (incorrect) are being rendered by the RadGrid, in case this helps.

All help appreciated!

Jon

2 Answers, 1 is accepted

Sort by
0
Jon
Top achievements
Rank 1
answered on 14 Feb 2011, 04:20 PM
Update:

I now believe that this problem is related to IE6 (we're not able to upgrade IE to newer versions). When I use FireFox (3.6.13), I do not experience any of these problems. I'm using IE6, SP3. Is there a patch or other work-around available for this version of IE?

Thanks,

Jon
0
Marin
Telerik team
answered on 15 Feb 2011, 03:03 PM
Hello Jon,

One possible option in this case is to manually find the correct column index by iterating through all the columns:

if (masterTable)
            {
                isActual = (selection == "Actual");
                isProjected = !isActual;
                cols = masterTable.get_columns();
                numColumns = cols.length;
                $(cols).each(function()
                {
                     
                    element = this.get_element();
                    colIndex = 0;    //this._element.uniqueNumber;
                    colName = this._data.UniqueName;
                     
                    for (var i = 0; i < masterTable.get_columns().length; i++)
                    {
                        if (masterTable.get_columns()[i].get_uniqueName() == colName)
                        {
                            colIndex = i; //get index of the current column
                            break;
                        }
                    }
                    //  Find this column name in the Projected column name array.
                    nameIndex = $.inArray(colName, projColNames);
   
                    if ((nameIndex > -1) && (colIndex <= numColumns))
                    {
                        //  If Actual is selected, then hide this Projected column.
                        (isActual ? masterTable.hideColumn(colIndex) : masterTable.showColumn(colIndex));
                    }
                    else
                    {
                        //  Find this column name in the Actual column name array.
                        nameIndex = $.inArray(colName, actualColNames);
   
                        if ((nameIndex > -1) && (colIndex <= numColumns))
                        {
                            //  If Projected is selected, then hide this Actual column.
                            (isProjected ? masterTable.hideColumn(colIndex) : masterTable.showColumn(colIndex));
                        }
                    }
                });
            }

I checked this in IE6 on my side it worked OK.

Greetings,
Marin
the Telerik team
Browse the vast support resources we have to jump start your development with RadControls for ASP.NET AJAX. See how to integrate our AJAX controls seamlessly in SharePoint 2007/2010 visiting our common SharePoint portal.
Tags
Grid
Asked by
Jon
Top achievements
Rank 1
Answers by
Jon
Top achievements
Rank 1
Marin
Telerik team
Share this question
or