((RadAjaxManager)this.Master.FindControl("AjaxManagerMasterPage")).RaisePostBackEvent("MyCustomCommand");OnAjaxRequest="AjaxManagerMasterPage_AjaxRequest"protected void AjaxManagerMasterPage_AjaxRequest(object sender, Telerik.Web.UI.AjaxRequestEventArgs e) { if (e.Argument == "MyCustomCommand") { //Just an example mainPanelBar.Items[5].Text = DateTime.Now.ToLongTimeString(); } }<telerik:AjaxSetting AjaxControlID="AjaxManagerMasterPage"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="mainPanelBar" /> <telerik:AjaxUpdatedControl ControlID="anotherControl" /> </UpdatedControls> </telerik:AjaxSetting><%@ Page Language="C#" AutoEventWireup="true" CodeBehind="quick_transaction_popup.aspx.cs" Inherits="OnTime.OnTime_Reports.Visitors.quick_transaction_popup" %><%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title></title></head><body> <form id="form1" runat="server"> <div> <telerik:RadScriptManager ID="Report_ScriptManager" runat="server" /> <h3> <asp:Literal ID="Literal_View1_Title" runat="server" Text="Transactions: Quick Report - "></asp:Literal> </h3> <asp:PlaceHolder ID="PlaceHolder_Report_SQL" runat="server"> <asp:SqlDataSource ID="SqlDataSource_Report" runat="server"> </asp:SqlDataSource> </asp:PlaceHolder> <telerik:RadGrid ID="RadGrid_Report" runat="server" AutoGenerateColumns="false" AllowMultiRowSelection="false" AllowAutomaticInserts="false" GridLines="None" CellPadding="0" AllowSorting="false" Skin="Outlook" ItemStyle-VerticalAlign="Top" OnExcelMLExportRowCreated="RadGrid_Report_ExcelMLExportRowCreated" Width="100%" > <ExportSettings HideStructureColumns="true" ExportOnlyData="true" FileName="Visitor_TQR" OpenInNewWindow="true" IgnorePaging="true"> <Excel Format="ExcelML" /> </ExportSettings> <MasterTableView Width="100%" CommandItemDisplay="Top" GridLines="None" AllowAutomaticInserts="false"> <CommandItemSettings ShowAddNewRecordButton="false" ShowExportToWordButton="false" ShowExportToExcelButton="true" ShowExportToCsvButton="false" ShowRefreshButton="false"/> <Columns> <telerik:GridBoundColumn UniqueName="Report_Logs_DateTime" DataField="Visitor_Logs_DateTime" HeaderText="Time" HeaderStyle-Width="33%" Visible="true" ItemStyle-VerticalAlign="Top"/> <telerik:GridBoundColumn UniqueName="Report_Transaction_Type" DataField="Function_Key_Description" HeaderText="Transaction Type" HeaderStyle-Width="33%" Visible="true" ItemStyle-VerticalAlign="Top"/> <telerik:GridBoundColumn UniqueName="Report_UserName" DataField="Visitor_UserName" HeaderText="Visitor" HeaderStyle-Width="33%" Visible="true" ItemStyle-VerticalAlign="Top"/> </Columns> </MasterTableView> <ClientSettings> <Selecting AllowRowSelect="false" /> </ClientSettings> </telerik:RadGrid> </div> </form></body></html>protected void Page_Load(object sender, EventArgs e) { //Register Javascript for Export Buttons string script2 = "function onRequestStart(sender, args)" + "{" + "if (args.get_eventTarget().indexOf(\"ExportToExcelButton\") >= 0 ||" + "args.get_eventTarget().indexOf(\"ExportToWordButton\") >= 0 ||" + "args.get_eventTarget().indexOf(\"ExportToCsvButton\") >= 0)" + "{" + "args.set_enableAjax(false);" + "}" + "}"; //I've tried commenting and UN-commenting this line with no luck! //ScriptManager.RegisterStartupScript(Page, Page.GetType(), "Report_RadGrid_Ajax_Disable", script2, true); Display_Report_RadGrid(); } protected void Display_Report_RadGrid() { //Populate Rad Grid SqlDataSource_Report = new SQL_Data_Source().getSQLDataSource(); SqlDataSource_Report.SelectCommandType = SqlDataSourceCommandType.StoredProcedure; SqlDataSource_Report.SelectCommand = SQL_Customer_Connection.Product_Name + "_rp_Visitor_TQR"; SqlDataSource_Report.SelectParameters.Add("Param_Customer_ID_Ref", TypeCode.String, (string)Session["User_Belongs_To_Customer_Ref_ID"]); SqlDataSource_Report.SelectParameters.Add("Param_Company_ID_Ref", TypeCode.String, (string)Session["User_Belongs_To_Company_Ref_ID"]); SqlDataSource_Report.SelectParameters.Add("Param_Visitor_Auto_ID_Ref", TypeCode.Int32, "22"); SqlDataSource_Report.SelectParameters.Add("Param_Transaction_Types", TypeCode.String, "0,1,2,3,4,5,6,7,8"); SqlDataSource_Report.SelectParameters.Add("Param_Start_Date", TypeCode.DateTime, "2011-01-01"); SqlDataSource_Report.SelectParameters.Add("Param_End_Date", TypeCode.DateTime, "2012-01-01"); RadGrid_Report.DataSource = SqlDataSource_Report; RadGrid_Report.Rebind(); } bool ExcelML_isConfigured = false; protected void RadGrid_Report_ExcelMLExportRowCreated(object source, GridExportExcelMLRowCreatedArgs e) { if (e.RowType == GridExportExcelMLRowType.DataRow) { //Add custom styles to the desired cells if (!ExcelML_isConfigured) { //Set Worksheet name e.Worksheet.Name = "Visitor_TQR"; //Set Column widths foreach (ColumnElement column in e.Worksheet.Table.Columns) { switch (e.Worksheet.Table.Columns.IndexOf(column)) { case 1: column.Width = Unit.Point(100); break; case 2: column.Width = Unit.Point(150); break; case 3: column.Width = Unit.Point(150); break; } } //Set Page options PageSetupElement pageSetup = e.Worksheet.WorksheetOptions.PageSetup; pageSetup.PageLayoutElement.IsCenteredVertical = true; pageSetup.PageLayoutElement.IsCenteredHorizontal = true; pageSetup.PageMarginsElement.Left = 0.5; pageSetup.PageMarginsElement.Top = 0.5; pageSetup.PageMarginsElement.Right = 0.5; pageSetup.PageMarginsElement.Bottom = 0.5; //pageSetup.PageLayoutElement.PageOrientation = PageOrientationType.Landscape; //Freeze panes e.Worksheet.WorksheetOptions.AllowFreezePanes = true; e.Worksheet.WorksheetOptions.LeftColumnRightPaneNumber = 1; e.Worksheet.WorksheetOptions.TopRowBottomPaneNumber = 1; e.Worksheet.WorksheetOptions.SplitHorizontalOffset = 1; e.Worksheet.WorksheetOptions.SplitVerticalOffest = 1; e.Worksheet.WorksheetOptions.ActivePane = 2; ExcelML_isConfigured = true; } } }function OnClientDropping(sender, eventArgs) { eventArgs.set_cancel(true); sender.clearSelection(); var droppedID = eventArgs.get_htmlElement().id; var listBoxID = sender.get_id(); var sourceItem = eventArgs.get_sourceItem(); var sourceItemText = sourceItem.get_text(); var sourceItemValue = sourceItem.get_value(); $find(ajaxManagerID).ajaxRequestWithTarget(droppedID, "Test");}function OnClientDropping(sender, eventArgs) { eventArgs.set_cancel(true); sender.clearSelection(); previousZone = null; var sourceItem = eventArgs.get_sourceItem(); var droppedID = eventArgs.get_htmlElement().id; if (droppedID.indexOf("RadDockZone") != -1) { if ($find(droppedID).get_docks().length == 0) { dockZoneDroppedOnID = droppedID; var eventData = {}; eventData["sourceItemText"] = sourceItem.get_text(); eventData["sourceItemValue"] = sourceItem.get_value(); eventData["listBoxID"] = sender.get_id(); $find(ajaxManagerID).ajaxRequestWithTarget(droppedID, $.toJSON(eventData)); } } else { dockZoneDroppedOnID = ""; }}var dockZoneDroppedOnID = "";//Handles drawing the LoadingPanels over the correct elements when callbacks are occurring. var loadingPanel = "";var pageRequestManager = Sys.WebForms.PageRequestManager.getInstance();var postBackElement = "";pageRequestManager.add_initializeRequest(initializeRequest);pageRequestManager.add_endRequest(endRequest);function initializeRequest(sender, eventArgs) { loadingPanel = $find(radAjaxLoadingPanel1ID); postBackElement = eventArgs.get_postBackElement().id; //When drag and dropping the 'interesting' control isn't where we're coming from but where we're going to. if (dockZoneDroppedOnID != "") { postBackElement = $find(dockZoneDroppedOnID).get_parent().get_id(); ; dockZoneDroppedOnID = ""; } loadingPanel.show(postBackElement);}function endRequest(sender, eventArgs) { loadingPanel = $find(radAjaxLoadingPanel1ID); loadingPanel.hide(postBackElement);}protected void Page_Load(object sender, EventArgs e){ Logger.Info("Page Load"); RegenerationManager.Instance.RegenerateDockContents(); if (IsPostBack) { string eventTarget = Request.Params.Get("__EVENTTARGET"); if (eventTarget.Contains("DockZone")) { CreationManager.ProcessDragAndDrop(eventTarget, Request.Params.Get("__EVENTARGUMENT")); } }}<cc1:CormantRadPane ID="RadPane1" Runat="server"> <nStuff:StyledUpdatePanel runat="server" ID="UpdatePanel1" UpdateMode="Conditional" CssClass="maxHeight" > <ContentTemplate> <cc1:CormantRadSplitter ID="RadSplitter1" runat="server" Visible="false"/> <cc1:CormantRadDockZone ID="RadDockZone1" runat="server" /> </ContentTemplate> </nStuff:StyledUpdatePanel></cc1:CormantRadPane>var splitterClientID = pane.get_splitter().get_id();var indexOfID = splitterClientID.indexOf("RadSplitter");var uniqueID = splitterClientID.substr(0, indexOfID).replace(/_/g, "$");var splitterID = splitterClientID.substr(indexOfID);
USEFUL ID: uniqueID.concat(splitterID) -- this rebuilds our old string with underscores replaced
with cash symbols, but will NOT replace any undescores following the control ID declaration.
e.g. saying ctl00_MainContent_RadSplitter_ABC will transform into ctl00$MainContent$RadSplitter_ABCSys.ArgumentException: Cannot deserialize. The data does not correspond to valid JSON.
Parameter name: data
The exception is thrown after all page events are executed properly and the Microsoft Ajax Library tries to deserialize the object. (
function JavaScriptSerializer$deserialize)
This bug has been found in the following browsers : Cassini, IE8, Firefox, Chrome, Safari, Opera.
could any one know the fix for this ? or Could you please direct me to solve this issue ?
Iam using the telerik's version : Assembly Telerik.Web.UI.dll, v4.0.30319
Note: I am using this control in a update panel
I cannot retrieve the textbox.text from from Editformsettings of the Radgrid1. The string returns empty all the time. What is wrong with the code after researching seems that the way i am doing it is correct. Any suggestions will be appreciated.
CODEBEHIND:
Protected Sub RadGrid1_ItemCommand(ByVal source As Object, ByVal e As Telerik.Web.UI.GridCommandEventArgs) Handles RadGrid1.ItemCommand
If e.CommandName = "PerformInsert" Then
If (TypeOf e.Item Is GridEditFormItem AndAlso e.Item.IsInEditMode) Then
Dim editItem As GridEditFormItem = DirectCast(e.Item, GridEditFormItem)
Dim Mytab As TextBox = DirectCast(editItem.FindControl("tbTabName"), TextBox)
Dim LocalTab As New SWBC.Weblet.BO.Mortgage.MtgTabs
With LocalTab
.TabName = Mytab.Text
End With
MyTabsList.Add(LocalTab)
End If
End If
ASPX Page
<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server" >
<AjaxSettings>
<telerik:AjaxSetting AjaxControlID="RadGrid1">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="RadGrid1" LoadingPanelID="RadAjaxLoadingPanel1" />
</UpdatedControls>
</telerik:AjaxSetting>
</AjaxSettings>
</telerik:RadAjaxManager>
<telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server" >
</telerik:RadAjaxLoadingPanel>
<telerik:RadGrid ID="RadGrid1" runat="server" AllowFilteringByColumn="false" AutoGenerateColumns="true"
AllowPaging="true" AllowSorting="true" Skin="Vista" Width="50%" GridLines="Both"
PageSize="50" EnableViewState="true" OnInsertCommand="RadGrid1_InsertCommand" >
<ExportSettings ExportOnlyData="true" IgnorePaging="true" OpenInNewWindow="true" >
<Csv RowDelimiter="Comma" />
</ExportSettings>
<ClientSettings AllowDragToGroup="True">
<Selecting AllowRowSelect="True" />
<Scrolling AllowScroll="True" UseStaticHeaders="true" />
</ClientSettings>
<MasterTableView AutoGenerateColumns="false" CommandItemDisplay="top" Height="100%" GridLines="Both"
EditMode="PopUp" DataKeyNames="Count" >
<RowIndicatorColumn>
<HeaderStyle Width="20px"/>
</RowIndicatorColumn>
<CommandItemSettings AddNewRecordText="Add Tab" />
<ExpandCollapseColumn>
<HeaderStyle Width="20px" />
</ExpandCollapseColumn>
<Columns>
<telerik:GridEditCommandColumn HeaderStyle-Width="20px" >
</telerik:GridEditCommandColumn>
<telerik:GridBoundColumn DataField="Count" DataType="System.Int16" HeaderText="Item" ReadOnly="True" SortExpression="Item">
<ItemStyle Width="20px" HorizontalAlign="Center" />
<HeaderStyle Width="20px" HorizontalAlign="Center" />
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="TabName" DataType="system.string" HeaderText="TabName" ReadOnly="True" SortExpression="TabName">
<ItemStyle Width="120px" HorizontalAlign="Center" />
<HeaderStyle Width="120px" HorizontalAlign="Center" />
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="TabText" HeaderText="TabText" SortExpression="TabText" UniqueName="TabText">
</telerik:GridBoundColumn>
<telerik:GridButtonColumn CommandName="Delete" Text="Delete" UniqueName="column" HeaderStyle-Width="50px" ItemStyle-Width="50px">
</telerik:GridButtonColumn>
</Columns>
<EditFormSettings InsertCaption="Add New Tab" EditFormType="Template" >
<PopUpSettings Width="640" />
<FormTemplate >
<table id="Table1" cellspacing="1" cellpadding="10" border="0" width="660">
<tr>
<td ></td>
<td> <asp:HiddenField runat="server" ID="hdCount" Value='<%# Bind( "Count" ) %>' /></td>
</tr>
<tr>
<td >Tab Name:</td>
<td>
<asp:TextBox runat="server" ID="tbTabName" Text='<%# Bind( "TabName" ) %>'>
</asp:TextBox>
</td>
</tr>
<tr>
<td valign="top">Tab Text:</td>
<td>
<telerik:RadEditor runat="server" ID="txtBody" Width="525px" >
<Tools>
<telerik:EditorToolGroup >
<telerik:EditorTool Name=AjaxSpellCheck />
<telerik:EditorTool Name=findandreplace />
<telerik:EditorTool Name=SelectAll />
<telerik:EditorTool Name=copy />
<telerik:EditorTool Name=Cut Visible=true />
<telerik:EditorTool Name=paste/>
<telerik:EditorToolStrip Name="paste options" >
<telerik:EditorTool Name=pasteashtml />
<telerik:EditorTool Name=pastefromword />
<telerik:EditorTool Name=pastefromwordnofontsnosizes />
</telerik:EditorToolStrip>
<telerik:EditorTool Name=undo />
<telerik:EditorTool Name=redo />
</telerik:EditorToolGroup>
<telerik:EditorToolGroup >
<telerik:EditorTool Name=linkmanager />
<telerik:EditorTool Name=unlink />
</telerik:EditorToolGroup>
<telerik:EditorToolGroup >
<telerik:EditorTool Name=insertparagraph />
<telerik:EditorTool Name=inserthorizontalrule />
<telerik:EditorTool Name=insertdate />
<telerik:EditorTool Name=InsertTime />
</telerik:EditorToolGroup>
<telerik:EditorToolGroup >
<telerik:EditorTool Name=formatblock />
<telerik:EditorTool Name=fontname />
<telerik:EditorTool Name=fontsize />
</telerik:EditorToolGroup>
<telerik:EditorToolGroup >
<telerik:EditorTool Name=bold />
<telerik:EditorTool Name=italic />
<telerik:EditorTool Name=underline />
<telerik:EditorTool Name=strikethrough />
</telerik:EditorToolGroup>
<telerik:EditorToolGroup >
<telerik:EditorTool Name=justifyleft />
<telerik:EditorTool Name=justifycenter />
<telerik:EditorTool Name=justifyright />
<telerik:EditorTool Name=justifynone />
</telerik:EditorToolGroup>
<telerik:EditorToolGroup >
<telerik:EditorTool Name=indent />
<telerik:EditorTool Name=outdent />
</telerik:EditorToolGroup>
<telerik:EditorToolGroup >
<telerik:EditorTool Name=insertorderedlist />
<telerik:EditorTool Name=insertunorderedlist />
</telerik:EditorToolGroup>
<telerik:EditorToolGroup >
<telerik:EditorTool Name=toggletableborder />
</telerik:EditorToolGroup>
<telerik:EditorToolGroup >
<telerik:EditorTool Name=forecolor />
<telerik:EditorTool Name=backcolor />
<telerik:EditorTool Name=formatstripper />
</telerik:EditorToolGroup>
<telerik:EditorToolGroup >
<telerik:EditorTool Name=insertsymbol />
<telerik:EditorTool Name=inserttable />
</telerik:EditorToolGroup>
<telerik:EditorToolGroup >
<telerik:EditorTool Name=converttolower />
<telerik:EditorTool Name=converttoupper />
<telerik:EditorTool Name=zoom />
<telerik:EditorTool Name=ModuleManager />
<telerik:EditorTool Name=togglescreenmode />
</telerik:EditorToolGroup>
</Tools>
</telerik:RadEditor>
</td>
</tr>
</table>
<table width="623">
<tr>
<td align="right" colspan="2">
<asp:Button ID="Button1" Text='<%# Iif (TypeOf Container is GridEditFormInsertItem, "Insert", "Update") %>'
runat="server" CommandName='<%# Iif (TypeOf Container is GridEditFormInsertItem, "PerformInsert", "Update") %>'>
</asp:Button>
<asp:Button ID="Button2" Text="Cancel" runat="server" CausesValidation="False" CommandName="Cancel">
</asp:Button>
</td>
</tr>
</table>
</FormTemplate>
</EditFormSettings>
</MasterTableView>
</telerik:RadGrid>