<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server" OnAjaxRequest="RadAjaxManager1_AjaxRequest" > <AjaxSettings> <telerik:AjaxSetting AjaxControlID="RadRibbonBarAdminTools"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="PContent" LoadingPanelID="RadAjaxLoadingContextPanel"> </telerik:AjaxUpdatedControl> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings></telerik:RadAjaxManager><telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingContextPanel" runat="server"></telerik:RadAjaxLoadingPanel><asp:Panel ID="PContent" runat="server"></asp:Panel>protected void Page_Load(object sender, EventArgs e){ if (LatestLoadedControlName != null) { LoadUserControl(LatestLoadedControlName); }}protected void RadRibbonBar_ButtonClick(object sender, RibbonBarButtonClickEventArgs e){ switch (e.Button.Text) { case "Summarized": LoadUserControl("usercontrols/data-Summaries.ascx"); break; default: if (LatestLoadedControlName != null) { Control previousControl = PContent.FindControl(LatestLoadedControlName.Replace("usercontrols/", "").Split('.')[0]); if (!Object.Equals(previousControl, null)) { this.PContent.Controls.Remove(previousControl); } } break; }}public void LoadUserControl(string controlName){ if (LatestLoadedControlName != null) { Control previousControl = PContent.FindControl(LatestLoadedControlName.Replace("usercontrols/", "").Split('.')[0]); if (!Object.Equals(previousControl, null)) { this.PContent.Controls.Remove(previousControl); previousControl.Dispose(); } } string userControlID = controlName.Replace("usercontrols/", "").Split('.')[0]; Control targetControl = PContent.FindControl(userControlID); if (Object.Equals(targetControl, null)) { UserControl userControl = (UserControl)this.LoadControl(controlName); userControl.ID = userControlID.Replace("/", "").Replace("~", ""); this.PContent.Controls.Add(userControl); LatestLoadedControlName = controlName; }}protected void RadAjaxManager1_AjaxRequest(object sender, AjaxRequestEventArgs e){}<telerik:RadGrid ID="rgIGTSummaryGrid" runat="server" DataSourceID="dsIGTDataSummary" AllowSorting="true" AllowPaging="true" PageSize="20" AutoGenerateColumns="false"> <PagerStyle Visible="false" /> <MasterTableView TableLayout="Auto" CommandItemDisplay="Top"> <CommandItemSettings ShowExportToExcelButton="true" ShowAddNewRecordButton="false" ShowRefreshButton="false" /> <Columns> <telerik:GridBoundColumn DataField="Username" HeaderText="Participant ID"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Time" HeaderText="Date"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Sex" HeaderText="Gender"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Age" HeaderText="Age"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="YoE" HeaderText="Education"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Start" HeaderText="Start"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Gain" HeaderText="Overall Gain"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Currency" HeaderText="Currency"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="NbDeck" HeaderText="#Deck"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="DeckOrder" HeaderText="Deck Display Order"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="A" HeaderText="#A Pick"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="B" HeaderText="#B Pick"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="C" HeaderText="#C Pick"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="D" HeaderText="#D Pick"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="DeckA_Output" HeaderText="Deck A Overall output"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="DeckB_Output" HeaderText="Deck B Overall output"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="DeckC_Output" HeaderText="Deck C Overall output"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="DeckD_Output" HeaderText="Deck D Overall output"> </telerik:GridBoundColumn> </Columns> </MasterTableView> <ExportSettings HideStructureColumns="false" IgnorePaging="true" OpenInNewWindow="true"> <Excel Format="Biff" /> </ExportSettings> <ClientSettings> <Scrolling AllowScroll="true" UseStaticHeaders="true" /> </ClientSettings></telerik:RadGrid><telerik:RadAjaxLoadingPanel ID="ralpIGTSummaryGrid" runat="server"></telerik:RadAjaxLoadingPanel><asp:SqlDataSource ID="dsIGTDataSummary" runat="server" ConnectionString="<%$ ConnectionStrings:NRPMonitorDB %>" SelectCommand="P_GetIGT_SummaryData" SelectCommandType="StoredProcedure"> <SelectParameters> <asp:Parameter Name="sid" DefaultValue="1" /> </SelectParameters></asp:SqlDataSource>Please see below image where we can see scrollbar in IE 10. We try to scroll page right by taking our mouse to scrollbar but then
scrollbar disappears and will not allow us to scroll right.
<Page1.jpg>
Please see below screen with disappeared scrollbars.
<Page2.jpg>
If scrollbar appearing and if we use arrow key from keyword to scroll left or right then it works but through mouse cursor, we are unable to scroll.
Another related issue for IE 10 Compatibility mode ON. Please see below screen, we have grid with cut view having few columns are not visible and also header image which is not stretching to the full end when we Don’t have mouse over Grid 2.
<Page3.jpg>
If we take mouse over Grid 2, it expands grid and image to full width as displayed below and it shrink back to previous cut view if we take mouse out of Grid 2.
<Page4.jpg>

<telerik:RadGrid runat="server" ID="grdArticoliCommentabili" AutoGenerateColumns="false" AllowPaging="true" OnItemCommand="grdArticoliCommentabili_ItemCommand" OnDetailTableDataBind="grdArticoliCommentabili_DetailTableDataBind" OnItemDataBound="grdArticoliCommentabili_ItemDataBound" AllowFilteringByColumn="true" OnPageIndexChanged="grdArticoliCommentabili_PageIndexChanged" OnPageSizeChanged="grdArticoliCommentabili_PageSizeChanged"> <GroupingSettings CaseSensitive="false" /> <MasterTableView DataKeyNames="id_articolo" CommandItemDisplay="Top" NoMasterRecordsText="<%$ Resources:Labels,NessunDato %>" NoDetailRecordsText="<%$ Resources:Labels,NessunDato %>"> <CommandItemTemplate> <table cellpadding="4" cellspacing="0" width="100%"> <tr> <td style="text-align: right; vertical-align: bottom;"> <asp:LinkButton ID="btnAggiorna" runat="server" CommandName="RebindGrid" CssClass="btnAggiorna"> <asp:Localize ID="Localize1" runat="server" Text="<%$ Resources:Labels,Refresh %>" /> </asp:LinkButton> <asp:LinkButton ID="btnGestioneBan" runat="server" OnClientClick="manageBans(); return false;" CssClass="btnAggiungi"> <asp:Localize ID="Localize2" runat="server" Text="<%$ Resources:,GestisciBan %>" /> </asp:LinkButton> </td> </tr> </table> </CommandItemTemplate> <CommandItemStyle Height="25px" /> <Columns> <telerik:GridTemplateColumn HeaderText="<%$ Resources:Grids,Commenti_Articolo %>" DataField="titolo" UniqueName="titolo" AllowFiltering="true" CurrentFilterFunction="Contains" CurrentFilterValue="" ShowFilterIcon="false" SortExpression="titolo" AutoPostBackOnFilter="True" FilterControlWidth="400px"> <ItemTemplate> <asp:Label runat="server" ID="lbl_titolo" Text='<%# Eval("titolo") %>' /> </ItemTemplate> <ItemStyle Width="500px" /> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn HeaderText="<%$ Resources:Grids,Commenti_Pubblicati %>" UniqueName="pubblicati" AllowFiltering="false"> <ItemTemplate> <a href="" onclick='<%# "showPublishedComments(" + Eval("id_articolo").ToString() + "); return false;" %>' class="lblRimbalzi"> <asp:Label runat="server" ID="lbl_pubblicati" Text='' /></a> </ItemTemplate> <ItemStyle Width="100px" /> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn HeaderText="<%$ Resources:Grids,Commenti_DaApprovare %>" UniqueName="daapprovare" AllowFiltering="false"> <ItemTemplate> <asp:Label runat="server" ID="lbl_da_approvare" Text='' /> </ItemTemplate> <ItemStyle Width="100px" /> </telerik:GridTemplateColumn> </Columns> <DetailTables> <telerik:GridTableView Name="Commenti" runat="server" DataKeyNames="id_commento" AutoGenerateColumns="false" AllowPaging="true" AllowSorting="true" AllowFilteringByColumn="false" PageSize="5" NoMasterRecordsText="<%$ Resources:Labels,NessunDato %>" NoDetailRecordsText="<%$ Resources:Labels,NessunDato %>"> <Columns> <telerik:GridTemplateColumn HeaderText="" UniqueName="commento" AllowFiltering="false"> <ItemTemplate> <table> <tr> <td> <asp:Label runat="server" Text="<%$ Resources:,ID %>" /> </td> <td> <asp:Label runat="server" ID="lbl_id_commento" Text='<%# Eval("id_commento") %>' /> </td> </tr> <tr> <td> <asp:Label runat="server" Text="<%$ Resources:,Autore %>" /> </td> <td> <asp:Label runat="server" ID="lbl_autore" Text='<%# GetCommentAuthor((Commento)Container.DataItem) %>' /> </td> </tr> <tr> <td> <asp:Label ID="Label1" runat="server" Text="<%$ Resources:,Email %>" /> </td> <td> <asp:Label runat="server" ID="Label3" Text='<%# Eval("email") %>' /> </td> </tr> <tr> <td> <asp:Label runat="server" Text="<%$ Resources:,Data %>"></asp:Label> </td> <td> <asp:Label runat="server" ID="lbl_dataregistrazione" Text='<%# Eval("dataregistrazione","{0:g}") %>' /> </td> </tr> <tr> <td> <asp:Label runat="server" Text="<%$ Resources:,Oggetto %>" /> </td> <td> <asp:Label runat="server" ID="lbl_oggetto" Text='<%# GetCommentSubject(Eval("oggetto").ToString()) %>' /> </td> </tr> <tr> <td> <asp:Label runat="server" Text="<%$ Resources:,Messaggio %>" /> </td> <td> <asp:Literal Mode="PassThrough" runat="server" ID="lbl_messaggio" Text='<%# GetCommentBody(Eval("body").ToString()) %>' /> </td> </tr> <tr> <td colspan="2"> <asp:LinkButton ID="btnApprova" CommandName="ApproveComment" runat="server" Text="<%$ Resources:,Approva %>" CssClass="btnAnnulla_Click" /> <asp:LinkButton ID="btnCancella" OnClientClick='<%# GenerateDeleteScript() %>' CommandName="DeleteComment" runat="server" Text="<%$ Resources:Labels,Elimina %>" CssClass="btnElimina" /> </td> </tr> </table> </ItemTemplate> </telerik:GridTemplateColumn> </Columns> </telerik:GridTableView> </DetailTables> <PagerStyle AlwaysVisible="true" PageSizes="10" /> </MasterTableView> </telerik:RadGrid>protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) BindGrid(); } private void BindGrid() { CommentiController controller = new CommentiController(); grdArticoliCommentabili.DataSource = controller.SelectCommentableArticles("CommentiArticolo"); grdArticoliCommentabili.DataBind(); } private void ReloadCommentsGrid(GridEditableItem item) { CommentiController controller = new CommentiController(); var id_articolo = (int)item.OwnerTableView.ParentItem.GetDataKeyValue("id_articolo"); item.OwnerTableView.DataSource = controller.SelectNonApprovedCommentsByArticle(id_articolo, "Utente"); item.OwnerTableView.DataBind(); } private void LoadCommentsGrid(GridTableView view) { CommentiController controller = new CommentiController(); int id_articolo = (int)view.ParentItem.GetDataKeyValue("id_articolo"); view.DataSource = controller.SelectNonApprovedCommentsByArticle(id_articolo, "Utente"); } protected void grdArticoliCommentabili_ItemCommand(object source, GridCommandEventArgs e) { if (e.CommandName == RadGrid.RebindGridCommandName || e.CommandName == RadGrid.FilterCommandName) { BindGrid(); } else if (e.CommandName == "ApproveComment") { var item = e.Item as GridEditableItem; var id_commento = (int)item.GetDataKeyValue("id_commento"); if (!JPortalUserBag.HasPermission(Entities.Commento, Permissions.Edit, Entities.NoEntityID)) { SetError(GetGlobalString("Errors", "SicurezzaPermessiInsufficentiOperazione")); LogManager.WriteWarning(GetLogSubject(), GetGlobalString("Errors", "SicurezzaPermessiInsufficentiOperazione")); BindGrid(); return; } try { CommentiController controller = new CommentiController(); var commento = controller.SelectByID(id_commento); commento.approvato = true; var parent_item = item.OwnerTableView.ParentItem; var lbl_pubblicati = (parent_item["pubblicati"].FindControl("lbl_pubblicati") as Label); var lbl_da_approvare = (parent_item["daapprovare"].FindControl("lbl_da_approvare") as Label); int parent_pubblicati = Convert.ToInt32(lbl_pubblicati.Text); int parent_daapprovare = Convert.ToInt32(lbl_da_approvare.Text); parent_pubblicati++; parent_daapprovare--; lbl_pubblicati.Text = parent_pubblicati.ToString(); lbl_da_approvare.Text = parent_daapprovare.ToString(); controller.Update(commento, false); ReloadCommentsGrid(item); LogManager.WriteMessage(GetLogSubject(), GetGlobalString("Messages", "CommentoApprovazione").Arguments(id_commento.ToString())); SetMessage(GetGlobalString("Messages", "CommentoApprovazione").Arguments(id_commento.ToString())); } catch (Exception) { LogManager.WriteError(GetLogSubject(), GetGlobalString("Errors", "CommentoApprovazione").Arguments(id_commento.ToString())); SetError(GetGlobalString("Errors", "CommentoApprovazione").Arguments(id_commento.ToString())); throw; } } else if (e.CommandName == "DeleteComment") { var item = e.Item as GridEditableItem; var id_commento = (int)item.GetDataKeyValue("id_commento"); if (!JPortalUserBag.HasPermission(Entities.Commento, Permissions.Delete, Entities.NoEntityID)) { SetError(GetGlobalString("Errors", "SicurezzaPermessiInsufficentiOperazione")); LogManager.WriteWarning(GetLogSubject(), GetGlobalString("Errors", "SicurezzaPermessiInsufficentiOperazione")); BindGrid(); return; } try { CommentiController controller = new CommentiController(); var commento = controller.SelectByID(id_commento); var parent_item = item.OwnerTableView.ParentItem; var lbl_da_approvare = (parent_item["daapprovare"].FindControl("lbl_da_approvare") as Label); int parent_daapprovare = Convert.ToInt32(lbl_da_approvare.Text); lbl_da_approvare.Text = (--parent_daapprovare).ToString(); controller.Delete(commento, false); ReloadCommentsGrid(item); LogManager.WriteMessage(GetLogSubject(), GetGlobalString("Messages", "CommentoEliminazione").Arguments(id_commento.ToString())); SetMessage(GetGlobalString("Messages", "CommentoEliminazione").Arguments(id_commento.ToString())); } catch (Exception) { LogManager.WriteError(GetLogSubject(), GetGlobalString("Errors", "CommentoEliminazione").Arguments(id_commento.ToString())); SetError(GetGlobalString("Errors", "CommentoEliminazione").Arguments(id_commento.ToString())); throw; } } } protected string GetCommentSubject(string input) { if (String.IsNullOrEmpty(input)) { return GetLocalString("CommentoOggettoEliminato"); } else { return input; } } protected string GetCommentBody(string input) { if (String.IsNullOrEmpty(input)) { return GetLocalString("CommentoEliminato"); } else { return input; } } protected string GetCommentAuthor(Commento comm) { if (comm.nome != null && comm.cognome != null) return String.Concat(comm.nome, " ", comm.cognome); else return comm.Utente != null ? comm.Utente.login : String.Empty; } protected string GenerateDeleteScript() { return "return showDoublePrompt('{0}',null);".Arguments(GetJSString(GetGlobalString("Messages", "MessaggioEliminazione"))); } private string GetJSString(string input) { return input.Replace("'", "\'"); } protected void grdArticoliCommentabili_DetailTableDataBind(object source, GridDetailTableDataBindEventArgs e) { LoadCommentsGrid(e.DetailTableView); } protected void grdArticoliCommentabili_ItemDataBound(object sender, GridItemEventArgs e) { if (e.Item is GridEditableItem) { var item = e.Item as GridEditableItem; var articolo = item.DataItem as Articolo; if (item.OwnerTableView.Name == "Commenti") return; var lbl_pubblicati = (item["pubblicati"].FindControl("lbl_pubblicati") as Label); var lbl_da_approvare = (item["daapprovare"].FindControl("lbl_da_approvare") as Label); var totale_commenti = articolo.CommentiArticolo.Where(a => a.approvato == true).Count(); var da_approvare = articolo.CommentiArticolo.Where(a => a.approvato == false).Count(); lbl_pubblicati.Text = totale_commenti.ToString(); lbl_da_approvare.Text = da_approvare.ToString(); } } protected void grdArticoliCommentabili_PageIndexChanged(object source, GridPageChangedEventArgs e) { BindGrid(); } protected void grdArticoliCommentabili_PageSizeChanged(object source, GridPageSizeChangedEventArgs e) { BindGrid(); }