

Unsupported scenarios
There are several limitations that you should have in mind. They are caused by the complexity and specifics of the frozen columns feature, which is implemented by means of hiding and showing columns, instead of actually scrolling them.
Please let us know if there are any workarounds for each of the mentioned issues. We seriously need some solution about these issues, specially the ones which have comments in brackets next to it. We want to know if these issues will be addressed in the next versions. These are Bottleneck for us to use in our application
Thanks and Regards
Nabeel Faruqui

How to get the data from a sessiondatasource?
I get the following scenario:
The code the .aspx is as below:
<sds:SessionDataSource DisplayWarning = "False" PrimaryKeyFields = "dp_key" ProviderName = "System.Data.SqlClient" ID = "devis" runat = "server" ConnectionString = "<%$ ConnectionStrings:xxxxxxxxxx_Connection %>" ConflictDetection = "CompareAllValues" OldValuesParameterFormatString = "original_{0}" SelectCommand="SELECT * FROM [devis] ORDER BY dp_key" DeleteCommand="DELETE FROM [devis] WHERE [dp_key] = ?" InsertCommand="INSERT INTO devis(dp_codeprd, dp_nombre, dp_convives, dp_prixs, dp_prixs_unitaire) VALUES (?, ?, ?, ?, ? )" > <DeleteParameters> <asp:Parameter Name="original_dp_key" Type="Int32" /> </DeleteParameters> <InsertParameters> <asp:Parameter Name="dp_codeprd" Type="String" /> <asp:Parameter Name="dp_nombre" Type="String" /> <asp:Parameter Name="dp_convives" Type="Int16" /> <asp:Parameter Name="dp_prixs" Type="Decimal" /> <asp:Parameter Name="dp_prixs_unitaire" Type="Decimal" /> </InsertParameters> </sds:SessionDataSource> <telerik:RadGrid ShowFooter = "false" ID = "devis_prd" runat = "server" DataSourceID = "devis" Width = "100%" AllowPaging = "True" PageSize = "10" AllowSorting = "false" GridLines = "None" AllowAutomaticDeletes = "True" AllowAutomaticInserts = "True" AllowAutomaticUpdates = "True" onitemdatabound = "devis_prd_ItemDataBound" > <HeaderContextMenu EnableTheming="True"> <CollapseAnimation Type="OutQuint" Duration="200"></CollapseAnimation> </HeaderContextMenu> <MasterTableView AutoGenerateColumns = "False" Width = "100%" HorizontalAlign = "NotSet" CommandItemDisplay = "None" CurrentResetPageIndexAction = "SetPageIndexToFirst" DataKeyNames = "dp_key, dp_prixs" Name = "devis_prd" NoMasterRecordsText = "Votre devis est vide !" NoDetailRecordsText = "Aucun produit sélectionné !" > <Columns> <telerik:GridBoundColumn DataField = "dp_key" HeaderText = "Id " SortExpression = "dp_key" UniqueName = "dp_key" DataType = "System.Int32" ReadOnly = "True" Visible = "False" > </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField = "dp_CodePrd" UniqueName = "dp_CodePrd" HeaderText = "Code Produit" DataType = "System.String" DataFormatString = "{0:LLL-LL-000}" > <HeaderStyle HorizontalAlign="Center" /> <ItemStyle HorizontalAlign="Center" /> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField = "dp_nombre" SortExpression = "dp_nombre" UniqueName = "dp_nombre" HeaderText = "Nom du Produit" DataType = "System.String" > <HeaderStyle HorizontalAlign="Left" /> <ItemStyle HorizontalAlign="Left" /> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField = "dp_convives" SortExpression = "dp_convives" UniqueName = "dp_convives" HeaderText = "Convives" DataType = "System.Int32" > <HeaderStyle HorizontalAlign="Right" /> <ItemStyle CssClass="monto_grid" /> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField = "dp_prixs" SortExpression = "dp_prixs" UniqueName = "dp_prixs" HeaderText = "Prix de la Paella" DataType = "System.Decimal" DataFormatString = "{0:C2}" > <HeaderStyle HorizontalAlign="Right" /> <ItemStyle CssClass="monto_grid" /> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField = "dp_prixs_unitaire" SortExpression = "dp_prixs_unitaire" UniqueName = "dp_prixs_unitaire" HeaderText = "Prix unitaire " HeaderStyle-Width = "120" DataType = "System.Decimal" DataFormatString = "{0:C2}" > <HeaderStyle HorizontalAlign="Right" /> <ItemStyle CssClass="monto_grid" /> </telerik:GridBoundColumn> <telerik:GridButtonColumn ConfirmText = "Cette action permet de supprimer le produit sélectionné de votre devis. <br/><br/>Etes-vous sûr ? <br/><br/>" ButtonType = "ImageButton" CommandName = "Delete" Text = "Supprimer ce produit" UniqueName = "DeleteColumn" ConfirmDialogType = "RadWindow" > <HeaderStyle Width="20px" /> <ItemStyle HorizontalAlign="Center" CssClass="MyImageButton" /> </telerik:GridButtonColumn> </Columns> <EditFormSettings> <EditColumn CurrentFilterFunction="NoFilter" FilterListOptions="VaryByDataType"></EditColumn> </EditFormSettings> </MasterTableView> <PagerStyle Mode="NextPrevAndNumeric" /> <FilterMenu EnableTheming="True"> <CollapseAnimation Duration="200" Type="OutQuint" /> </FilterMenu> </telerik:RadGrid> string query_str = "SELECT * FROM [devis] order by dp_key"; DataTable dt = GetDataTable(query_str); RadGrid_devis_panel.DataSource = dt; RadGrid_devis_panel.DataBind(); etapa_02.Alert("--> devis_rpt_PreRender : " + dt.Rows.Count); <telerik:OpenAccessDataSource ID="EntitlementDS" runat="server" ObjectContextProvider="Xapt.AgilePoint.Data.SiteContextModel.SiteEntityDiagrams, Xapt.AgilePoint.Data.SiteContextModel" TypeName="Xapt.AgilePoint.Data.SiteContextModel.Entitlement" EnableDelete="False" EnableInsert="False" EnableUpdate="False"></telerik:OpenAccessDataSource><telerik:RadTreeView runat="server" ID="tvEntitlement" DataSourceID="EntitlementDS" DataFieldID="EntitlementId" DataFieldParentID="ParentId" DataTextField="Description"></telerik:RadTreeView>Failed to load viewstate. The control tree into which viewstate is being loaded must match the control tree that was used to save viewstate during the previous request. For example, when adding controls dynamically, the controls added during a post-back must match the type and position of the controls added during the initial request.
=============================
I am doing this on click of custom links on my page. and event handler for the links as follows
==============================
CODE BEHIND ASPX.CS
protected
override void OnLoad(EventArgs e)
{
base.OnLoad(e);
DayLink.ServerClick += new EventHandler(DayLink_ServerClick);
WeekLink.ServerClick += new EventHandler(WeekLink_ServerClick);
MonthLink.ServerClick += new EventHandler(MonthLink_ServerClick);
}
void MonthLink_ServerClick(object sender, EventArgs e)
{
SchedulerSelectedView = SchedulerViewType.MonthView;
}
void WeekLink_ServerClick(object sender, EventArgs e)
{
SchedulerSelectedView = SchedulerViewType.WeekView;
}
void DayLink_ServerClick(object sender, EventArgs e)
{
SchedulerSelectedView = SchedulerViewType.DayView;
}
public SchedulerViewType SchedulerSelectedView
{
set { timeBlockRadSchedulerControl.SelectedView = value; }
get { return timeBlockRadSchedulerControl.SelectedView; }
}
==============================****************************************************************************
ASPX PAGE
==============================
<body style="background-color:Silver" >
<form runat="server">
<rad:RadScriptManager ID="scriptManager" runat="server" AsyncPostBackTimeout="5000">
<Scripts>
<asp:ScriptReference Path="../../../common/includes/JavaScript/AJAXClientEvents.js" />
</Scripts>
</rad:RadScriptManager>
<div class="FloatRightDiv">
<a runat="server" href="#" id="DayLink">Day</a>
<a id="WeekLink" runat="server" >Week</a>
<a id="MonthLink" runat="server" >Month</a>
</div>
<rad:RadScheduler ID="timeBlockRadSchedulerControl" runat="server" Height="100" Width="100" SelectedView="MonthView" DataKeyField="PrimaryKey" DataSubjectField="DisplayName" DataStartField="StartDate" DataEndField="AppointmentEndDate" >
<appointmenttemplate>
<div id="recurrenceDiv" runat="server">
<div class="rsAptTermsOfCourt">
<asp:Label ID="timeBlockNameLabel" runat="server" Text="TT"></asp:Label>
<asp:Label ID="appointmentTimeLabel" runat="server" Text="10:20 PM"></asp:Label>
<asp:Label ID="subjectapptLabel" runat="server" Text="Subject"></asp:Label>
</div>
</div>
</appointmenttemplate>
</rad:RadScheduler>
</form>
</body>
========================***************************************************************************************