Hi,
I have very slow performance of displaying records in radgrid hierarchial. I m displaying some 1000 records in radgrid intially, but taking morethan 40 secs to load.
I have refered and implemented the options metioned in the following url, but i m still struggling with this,
http://www.telerik.com/help/aspnet-ajax/grdviewstatereductiontechniques.html
Code snippet
<telerik:RadGrid runat="server" ID="grdProgram_CommercialDetails" Height="285px" EnableViewState="false" |
AllowPaging="True" AllowMultiRowSelection="false" OnDetailTableDataBind="grdProgram_CommercialDetails_DetailTableDataBind" DataSourceID="SqlDataSource1" AllowAutomaticDeletes="true" OnDeleteCommand="grdProgram_CommercialDetails_DeleteCommand" OnEditCommand="grdProgram_CommercialDetails_EditCommand" OnItemDataBound="grdProgram_CommercialDetails_ItemDataBound" OnUpdateCommand="grdProgram_CommercialDetails_UpdateCommand" |
PageSize="5" AllowSorting="true" PagerStyle-Mode="NextPrevNumericAndAdvanced" AutoGenerateColumns="false" ShowStatusBar="true" AllowFilteringByColumn="true" OnNeedDataSource="grdProgram_CommercialDetails_NeedDataSource" OnItemDeleted="grdProgram_CommercialDetails_ItemDeleted"> |
<MasterTableView DataKeyNames="Program_Id,Segment" AllowFilteringByColumn="true" AutoGenerateColumns="false" DataSourceID="SqlDataSource1" AllowAutomaticDeletes="true" OnPreRender="grdProgram_CommercialDetails_PreRender" HierarchyLoadMode="ServerOnDemand"> |
<Columns> |
<telerik:GridClientSelectColumn UniqueName="prog_comm" HeaderStyle-Width="20px"/> |
<telerik:GridBoundColumn DataField="Program_Id" HeaderText="Program_Id" Display="false"></telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="ProgrammeName" HeaderText="Programme" Display="true" FilterControlWidth="50px"></telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="ProgrammeType" HeaderText="ProgrammeType" Display="false"></telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="Commercial" HeaderText="BreakEvents" Display="false"></telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="Episode" HeaderText="Episode" Display="true" FilterControlWidth="40px" HeaderStyle-Width="75px"></telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="Repeat" HeaderText="Repeat" Display="true" FilterControlWidth="40px" HeaderStyle-Width="75px"></telerik:GridBoundColumn> |
<telerik:GridDateTimeColumn UniqueName="DateTime1" DataFormatString="{0:d}" FilterControlWidth="86px" HeaderStyle-Width="110px" |
SortExpression="DateTime" HeaderText="DateTime" DataField="DateTime"> |
</telerik:GridDateTimeColumn> |
<telerik:GridBoundColumn DataField="DateTime" HeaderText="Datetime" Display="false"></telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="StartTime" HeaderText="StartTime" FilterControlWidth="40px" Display="true"></telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="EndTime" HeaderText="EndTime" FilterControlWidth="40px" Display="true"></telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="Segment" HeaderText="Segment" Display="true" FilterControlWidth="40px"></telerik:GridBoundColumn> |
</Columns> |
<DetailTables> |
<telerik:GridTableView AllowAutomaticDeletes="true" DataKeyNames="Program_Id" DataSourceID="SqlDataSource2" CommandItemDisplay="Bottom" Width="600px" Name="grd1" HierarchyLoadMode="ServerOnDemand" > |
<ParentTableRelation> |
<telerik:GridRelationFields DetailKeyField="Program_Id" MasterKeyField="Program_Id" /> |
</ParentTableRelation> |
<Columns> |
<telerik:GridClientSelectColumn UniqueName="Prog_Comm_Select" HeaderStyle-Width="35px" /> |
<telerik:GridBoundColumn DataField="Program_Id" HeaderText="Program_Id" Display="false" ReadOnly="true"></telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="ProgrammeName" HeaderText="ProgrammeName" Display="false" ReadOnly="true"></telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="Commercial" HeaderText="BreakEvents" Display="true" ReadOnly="true" FilterControlWidth="50px"></telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="ProgrammeType" HeaderText="Type" Display="true" ReadOnly="true" FilterControlWidth="50px" HeaderStyle-Width="85px"></telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="StartTime" HeaderText="StartTime" Display="true" ReadOnly="true" FilterControlWidth="40px"></telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="EndTime" HeaderText="EndTime" Display="true" ReadOnly="true" FilterControlWidth="40px"></telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="BreakPosition" HeaderText="BreakPosition" Display="false" ReadOnly="true"></telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="ReleaseOrderNo" HeaderText="ReleaseOrderNo" Display="false" ReadOnly="true"></telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="DateTime" HeaderText="DateTime" Display="false" ReadOnly="true"></telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="Repeat" HeaderText="Repeat" Display="false" ReadOnly="true"></telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="Episode" HeaderText="Episode" Display="false" ReadOnly="true"></telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="breaks" HeaderText="breaks" Display="false" ReadOnly="true"></telerik:GridBoundColumn> |
<telerik:GridBoundColumn DataField="AdPosition" HeaderText="AdPosition" Display="false" ReadOnly="true"></telerik:GridBoundColumn> |
<telerik:GridTemplateColumn UniqueName="TemplateColumn" HeaderText="Adposition" |
SortExpression="Adposition" FilterControlWidth="40px"> |
<FooterTemplate>Template footer</FooterTemplate> |
<FooterStyle VerticalAlign="Middle" HorizontalAlign="Center" /> |
<ItemTemplate> |
<%#DataBinder.Eval(Container.DataItem,"Adposition")%> |
</ItemTemplate> |
<EditItemTemplate> |
<telerik:RadComboBox DataTextField="Adposition" |
DataValueField="Adposition" |
OnItemsRequested="RadComboBox1_ItemsRequested" |
EnableLoadOnDemand="True" |
ID="RadComboBox1" |
runat="server" |
Height="140px" |
Width="220px" |
SelectedValue='<%#Bind("Adposition") %>' |
DataSourceID="SqlDataSource2"> |
</telerik:RadComboBox> |
</EditItemTemplate> |
</telerik:GridTemplateColumn> |
<%--<telerik:GridDropDownColumn DataField="Adposition" HeaderText="AdPosition" Display="true"></telerik:GridDropDownColumn>--%> |
<telerik:GridButtonColumn ButtonType="ImageButton" ConfirmText="Do you want to delete?" |
CommandName="Delete" Text="Delete" UniqueName="DeleteColumn1" HeaderText="Delete" HeaderStyle-Width="40px"> |
<ItemStyle HorizontalAlign="Center"/> |
</telerik:GridButtonColumn> |
<telerik:GridEditCommandColumn ButtonType="ImageButton" Display="true" HeaderText="Edit" HeaderStyle-Width="40px"></telerik:GridEditCommandColumn> |
</Columns> |
<CommandItemTemplate> |
<input type="Button" value="MoveDown" style="background-image: url('~/Images/arrow_marble_down.gif');" onclick="moveRowDown()"> |
<input type="Button" value="MoveUp" style="background-image: url('~/Images/arrow_marble_up.gif');" onclick="moveRowUp()"> |
</CommandItemTemplate> |
</telerik:GridTableView> |
</DetailTables> |
</MasterTableView> |
<SelectedItemStyle BackColor="BurlyWood" ForeColor="Black" Font-Bold="true" /> |
<ClientSettings AllowRowsDragDrop="True"> |
<Selecting AllowRowSelect="True" EnableDragToSelectRows="false"/> |
<ClientEvents OnRowSelected="RadGrid1_RowSelected"></ClientEvents> |
<Scrolling AllowScroll="true" UseStaticHeaders="true"/> |
</ClientSettings> |
</telerik:RadGrid> |
Please give any suggestions.
Regards,
Maha;)