I am creating a custom control(.dll) which has RadTextBox, Rad combo box having gird(_grd2) as its Item and a Image button which opens radwindow having another grid(_grd1).
My requirement is that onKeypress i.e., based on character entered in combobox text, content of grid(_grd2) (which is available as item in combobox) need to be filtered and displayed .
To achieve this i am using Item requested event where i am setting grid’s(_grd2)filter expression but getting following error popup immediately after ItemsRequested event procedure.
“Script control xxx(i.e.,_grd2) is not a registered script control. Script controls must be registered using RegisterScriptControl() before calling RegisterScriptDescriptors()
Parameter name: scriptControl”
Please suggest me way to resolving this issue.
As a note that
1) using script manager in aspx where custom control is consumed.
2) I approached following ways but none of them worked
I tried using RadScriptManger instead of aspx scriptamanager but still I got same error.
Same error is poping up even on use of OnClientItemRequesting and OnClientItemRequested events.
When I made _grd2.RegisterWithScriptManager = false; and combobox.RegisterWithScriptManager = false then ItemRequested event is fired and grid got filtered with filter expression applied but none of filtered rows are selectable i.e., postback is not happening during row click of radgrid(_grd2) , infact row click is not happening and item command is not fired.
RadAjaxManagerProxy _ramMangagerProxy = new RadAjaxManagerProxy();_ramMangagerProxy.ID = "RadAjaxManager";_ramMangagerProxy.ClientIDMode = ClientIDMode.AutoID;RadAjaxLoadingPanel _ralLoadingPanel = new RadAjaxLoadingPanel();_ralLoadingPanel.ID = "RadAjaxLoadPanel";_ralLoadingPanel.ClientIDMode = ClientIDMode.AutoID;AjaxSetting _settings = new AjaxSetting();_settings.AjaxControlID = _grd1.ID;AjaxUpdatedControl _id = new AjaxUpdatedControl();_id.ControlID = _grd1.ID;_id.LoadingPanelID = _ralLoadingPanel.ID;_settings.UpdatedControls.Add(_id);_ramMangagerProxy.AjaxSettings.Add(_settings);RadGrid _grd2 = new RadGrid();_grd2.ID = “Grd2”;_grd2.ClientIDMode = ClientIDMode.AutoID;_grd2.NeedDataSource += new GridNeedDataSourceEventHandler(Grd2_NeedDataSource);_grd2.ClientSettings.Selecting.AllowRowSelect = true;_grd2.EnableLinqExpressions = false;_grd2.RegisterWithScriptManager = true;_grd2.ItemCommand += new GridCommandEventHandler(Grd2_GridItemCommand);RadComboBox _drdComboBox = new RadComboBox();_drdComboBox.ID =“ DrdComboBox”;_drdComboBox.CssClass = DrdComboBoxCss;_drdComboBox.AllowCustomText = true;_drdComboBox.AutoPostBack = false;_drdComboBox.MarkFirstMatch = true;_drdComboBox.EnableLoadOnDemand = true;_drdComboBox.ClientIDMode = ClientIDMode.AutoID;_drdComboBox.ItemsRequested += new RadComboBoxItemsRequestedEventHandler(_drdComboBox_ItemsRequested);RadComboBoxItem item = new RadComboBoxItem();item.Controls.Add(_grd2);_drdComboBox.Items.Add(item);protected void Grd2_NeedDataSource(object sender, GridNeedDataSourceEventArgs e){_grd2. DataSource = dataTable (or) dataset (or) list;}protected void Grd2_GridItemCommand(object sender, GridCommandEventArgs e){// code regarding row click.}protected void _drdComboBox_ItemsRequested(object sender, RadComboBoxItemsRequestedEventArgs e){if (e.Text != ""){this._grd2.MasterTableView.FilterExpression = "([Col] LIKE 'txt %')";_grd2.MasterTableView.Rebind();}}| <!-- START Script Block for Chart FactorySum --> |
| <div id='FactorySumDiv' > |
| Chart. |
| </div> |
| <script type="text/javascript"> |
| var chart_FactorySum = new FusionCharts("FusionCharts/MSColumn3D.swf", "FactorySum", "798", "300", "0", "0", "", "noScale", "EN" ); |
| chart_FactorySum.setDataXML("<chart caption='Test' xAxisName='X Value' yAxisName='Y Value' showValues='0'><categories><category label='8/6/2006'/><category label='8/7/2006'/><category label='8/8/2006'/><category label='8/9/2006'/><category label='8/10/2006'/><category label='8/11/2006'/><category label='8/12/2006'/></categories><dataset seriesName='Offline Marketing' color='1D8BD1' anchorBorderColor='1D8BD1' anchorBgColor='1D8BD1'><set value='1327'/><set value='1826'/><set value='1699'/><set value='1511'/><set value='1904'/><set value='1957'/><set value='1296'/></dataset></chart>"); |
| chart_FactorySum.render("FactorySumDiv"); |
| </script> |
| <!-- END Script Block for Chart FactorySum --> |
| <div id='FactorySumDiv' > |
| Chart. |
| </div> |
| <%@ Page Language="VB" AutoEventWireup="true" CodeFile="Default.aspx.vb" Inherits="_Default" %> |
| <%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %> |
| <%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="ajaxToolkit" %> |
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> |
| <html xmlns="http://www.w3.org/1999/xhtml"> |
| <head runat="server"> |
| <title>Sales Report</title> |
| <script type="text/javascript" src="FusionCharts/FusionCharts.js"></script> |
| <script type="text/javascript"> |
| function RequestStart(sender, eventArgs) |
| { |
| var divElementStyle = document.getElementById("RadAjaxLoadingPanel1").style; |
| divElementStyle.position = 'absolute'; |
| //position the loading panel |
| divElementStyle.left = eventArgs.get_eventTargetElement().offsetLeft + "px"; |
| divElementStyle.top = eventArgs.get_eventTargetElement().offsetTop + "px"; |
| } |
| </script> |
| </head> |
| <body style="background-color:#3d766f; font-family:Verdana; font-size:12px;"> |
| <form id="form1" runat="server"> |
| <telerik:radscriptmanager id="RadScriptManager1" runat="server" AsyncPostBackTimeout="0"/> |
| <telerik:RadFormDecorator ID="RadFormDecorator1" runat="server" Skin="Office2007" DecoratedControls="All" /> |
| <telerik:radajaxmanager id="RadAjaxManager1" runat="server"> |
| <ClientEvents OnRequestStart="RequestStart"></ClientEvents> |
| <AjaxSettings> |
| <telerik:AjaxSetting AjaxControlID="RadTabStrip1"> |
| <UpdatedControls> |
| <telerik:AjaxUpdatedControl ControlID="RadMultiPage1" LoadingPanelID="RadAjaxLoadingPanel1" /> |
| <telerik:AjaxUpdatedControl ControlID="lt_HourlyGraph" LoadingPanelID="RadAjaxLoadingPanel1" /> |
| </UpdatedControls> |
| </telerik:AjaxSetting> |
| <telerik:AjaxSetting AjaxControlID="ddlcharttype"> |
| <UpdatedControls> |
| <telerik:AjaxUpdatedControl ControlID="Panel_HourlyGraph" LoadingPanelID="RadAjaxLoadingPanel1" /> |
| </UpdatedControls> |
| </telerik:AjaxSetting> |
| </AjaxSettings> |
| </telerik:radajaxmanager> |
| <telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server" MinDisplayTime="1000"> |
| <img alt="Loading..." src='<%= RadAjaxLoadingPanel.GetWebResourceUrl(Page, "Telerik.Web.UI.Skins.Default.Ajax.loading.gif") %>' style="border:0;" /> |
| </telerik:RadAjaxLoadingPanel> |
| <asp:Table ID="main" runat="server" BorderColor="white" BackColor="white" BorderWidth="0" CellPadding="5" CellSpacing="0" Width="1024px" Height="100%" HorizontalAlign="center"> |
| <asp:TableRow> |
| <asp:TableCell VerticalAlign="top" Width="220px"> |
| <b>Company Report:</b><br /><br /> |
| <telerik:RadComboBox ID="ddlCompanyReport" Font-Size="12px" Width="200px" AutoPostBack="true" runat="server" Skin="Web20" /><br /><br /><br /> |
| <b>Build your own:</b><br /><br /> |
| <telerik:RadComboBox ID="ddlAdhocReport" Font-Size="12px" Width="200px" AutoPostBack="true" runat="server" Skin="Web20" /> |
| </asp:TableCell> |
| <asp:TableCell VerticalAlign="top" Width="798px"> |
| <asp:Table ID="tbl_hourlyparam" runat="server" Width="798px"> |
| <asp:TableRow> |
| <asp:TableCell VerticalAlign="top"> |
| <table border="0" cellpadding="5" cellspacing="0" width="798px"> |
| <tr> |
| <td align="center"> |
| Previous Year: <telerik:RadDatePicker Font-Size="12px" Calendar-ShowColumnHeaders="false" Calendar-ShowRowHeaders="true" |
| ID="txt_hourlyFrom" runat="server" Skin="Web20" /> |
| Current Year: <telerik:RadDatePicker Font-Size="12px" Calendar-ShowColumnHeaders="false" Calendar-ShowRowHeaders="true" |
| ID="txt_hourlyTo" runat="server" Skin="Web20" /> |
| </td> |
| </tr> |
| <tr> |
| <td width="798px"> |
| <telerik:RadComboBox ID="ddlcharttype" Font-Size="12px" runat="server" Skin="Web20" AutoPostBack="true"> |
| <Items> |
| <telerik:RadComboBoxItem Text="Select a chart type" Value="" /> |
| <telerik:RadComboBoxItem Text="Area" Value="Area" /> |
| <telerik:RadComboBoxItem Text="Bar" Value="Bar" /> |
| <telerik:RadComboBoxItem Text="Column" Value="Column" /> |
| <telerik:RadComboBoxItem Text="Line" Value="Line" /> |
| </Items> |
| </telerik:RadComboBox> |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <asp:Panel ID="Panel_HourlyGraph" runat="server"> |
| <asp:Literal ID="lt_HourlyGraph" runat="server"></asp:Literal> |
| </asp:Panel> |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <telerik:RadTabStrip ID="RadTabStrip1" ReorderTabsOnSelect="true" runat="server" Skin="Office2007" |
| MultiPageID="RadMultiPage1" SelectedIndex="0"> |
| <Tabs> |
| <telerik:RadTab Text="Norwalk" runat="server" Selected="True" /> |
| <telerik:RadTab Text="Danbury" runat="server" /> |
| <telerik:RadTab Text="Yonkers" runat="server" /> |
| <telerik:RadTab Text="Newington" runat="server" /> |
| </Tabs> |
| </telerik:RadTabStrip> |
| <telerik:RadMultiPage style="border: 1px solid #828282; padding: 40px 10px 25px;" runat="server" ID="RadMultiPage1" SelectedIndex="0"> |
| <telerik:RadPageView runat="server" ID="RadPage_Norwalk"> |
| <asp:Literal ID="Hourly_NOR" runat="server" /> |
| </telerik:RadPageView> |
| <telerik:RadPageView ID="RadPage_Danbury" runat="server"> |
| <asp:Literal ID="Hourly_DAN" runat="server" /> |
| </telerik:RadPageView> |
| <telerik:RadPageView ID="RadPage_Yonkers" runat="server"> |
| <asp:Literal ID="Hourly_YON" runat="server" /> |
| </telerik:RadPageView> |
| <telerik:RadPageView ID="RadPage_Newington" runat="server"> |
| <asp:Literal ID="Hourly_NWG" runat="server" /> |
| </telerik:RadPageView> |
| </telerik:RadMultiPage> |
| </td> |
| </tr> |
| </table> |
| </asp:TableCell> |
| </asp:TableRow> |
| </asp:Table> |
| </asp:TableCell> |
| </asp:TableRow> |
| <asp:TableRow> |
| <asp:TableCell ColumnSpan="2" BackColor="gray" Width="798px" ForeColor="white" HorizontalAlign="center"> |
| © 2009 All Rights Reserved. |
| </asp:TableCell> |
| </asp:TableRow> |
| </asp:Table> |
| </form> |
| </body> |
| </html> |
| server side is |
| Protected Sub ddlcharttype_SelectedIndexChanged(ByVal o As Object, ByVal e As Telerik.Web.UI.RadComboBoxSelectedIndexChangedEventArgs) Handles ddlcharttype.SelectedIndexChanged |
| Dim charttype As String = GetChartType() |
| Dim chartData As String = GetFactorySummaryChartHtm() |
| lt_HourlyGraph.Text = FusionCharts.RenderChart(charttype.ToString, "", chartData.ToString, "FactorySum", "798", "300", False, False) |
| End Sub |
<telerik:RadPane ID="RightPane" runat="server" Width="22px" Scrolling="None">
<telerik:RadSlidingZone ID="SlidingZone1" runat="server" Width="22px" SlideDirection="Left"
ClickToOpen="false" >
<telerik:RadSlidingPane ID="RadSlidingPane2" Title="Lokal" ToolTip="Lokale Gruppen"
runat="server" Width="355px" IconUrl="/images/folder.png" OnClientExpanded="LoadLocalGroup" EnableDock="false">
<asp:Panel ID="PanelLocal" runat="server" Height="100%">
<twoeyes:LocalGroupAllocation ID="alloc_LocalGroup" runat="server" />
</asp:Panel>
</telerik:RadSlidingPane>
<telerik:RadSlidingPane ID="RadSlidingPane3" Title="Global" ToolTip="Globale Gruppen"
runat="server" Width="355px" IconUrl="/images/folder_blue.png" OnClientExpanded="LoadGlobalGroup" EnableDock="false">
<asp:Panel ID="PanelGlobal" runat="server" Height="100%">
<twoeyes:GlobalGroupAllocation ID="alloc_GlobalGroup" runat="server" />
</asp:Panel>
</telerik:RadSlidingPane>
</telerik:RadSlidingZone>
</telerik:RadPane>
"<Items Text=" "><Item Text="My Tracker" Url="#"><Item Text="Add My Menu" Url="Add_MyMenu.asp"/><Item Text="Manage My Menu" Url="Manage_MyMenu.asp"/><Item Text="Tracker Queue" Url="Start.asp"/><Item Text="Edit Profile" Url="edit_profile.asp"/><Item Text="Assign Accounts" Url="assign.asp"/><Item Text="Help" Url="Help.asp"/><Item Text="Report Builder" Url="ReportBuilderMain.asp"/><Item Text="DnB Admin Tool" Url="Insured_admin.asp"/></Item><Item Text="Advantage Reports" Url="AdvAcctsByBroker.asp"></Item></Items>"
I installed RadFormDecorator FREE for ASP.NET AJAX Q3 2010 on a Win 7 x64 machine. The installation got stuck after I received this error message
namespace myOBIS_Entities.SchedulerProvider { public class MyobisSchedulerProvider : DbSchedulerProviderBase { public override IEnumerable<Appointment> GetAppointments(ISchedulerInfo schedulerInfo) { IQueryable<myOBIS_Entities.EntityFramework.Appointment> MyoAppointments = CallingEnvironment.Membership.CurrentOrganisation.Appointments; List<Appointment> appointments = new List<Appointment>(); foreach (myOBIS_Entities.EntityFramework.Appointment myoApp in MyoAppointments) { Appointment apt = new Appointment(); apt.ID = myoApp.AppointmentId; apt.Subject = myoApp.Subject; apt.Start = myoApp.AppointmentStart; apt.End = myoApp.AppointmentEnd; apt.DataItem = myoApp; apt.ToolTip = "Appointment From WebService"; appointments.Add(apt); } return appointments.AsEnumerable(); } public override void Update(ISchedulerInfo schedulerInfo, Appointment appointmentToUpdate) { var myoSchedulerInfo = schedulerInfo as MyobisSchedulerInfo; AppointmentController.EditAppointment( Guid.Parse(appointmentToUpdate.ID.ToString()), myoSchedulerInfo.MaxAttendees, myoSchedulerInfo.Price, myoSchedulerInfo.LastMinutePrice, myoSchedulerInfo.DaysBeforeLastMinute); } public override IDictionary<ResourceType, IEnumerable<Resource>> GetResources(ISchedulerInfo schedulerInfo) { return null; } public override void Insert(ISchedulerInfo schedulerInfo, Appointment appointmentToInsert) { var myoSchedulerInfo = schedulerInfo as MyobisSchedulerInfo; AppointmentController.InsertAppointment( myoSchedulerInfo.OrganisationId, myoSchedulerInfo.EventProductId, myoSchedulerInfo.LocationId, myoSchedulerInfo.Type, appointmentToInsert.Start, appointmentToInsert.End, myoSchedulerInfo.MaxAttendees, myoSchedulerInfo.CurrencyCode, myoSchedulerInfo.Price, myoSchedulerInfo.LastMinutePrice, myoSchedulerInfo.DaysBeforeLastMinute); } public override void Delete(ISchedulerInfo schedulerInfo, Appointment appointmentToDelete) { AppointmentController.DeleteAppointment(Guid.Parse(appointmentToDelete.ID.ToString())); } } }namespace myOBIS_Entities.SchedulerProvider { public class MyobisSchedulerInfo : SchedulerInfo { public Guid OrganisationId { get; set; } public Guid EventProductId { get; set; } public Guid LocationId { get; set; } public int Type { get; set; } public short MaxAttendees { get; set; } public string CurrencyCode { get; set; } public double Price { get; set; } public double LastMinutePrice { get; set; } public int DaysBeforeLastMinute { get; set; } public MyobisSchedulerInfo() { } public MyobisSchedulerInfo( ISchedulerInfo baseInfo, Guid orgId, Guid eventProductId, Guid locationId, int type, short maxAttendees, string currencyCode, double price, double lastMinutePrice, int daysBeforeLastMinute) :base(baseInfo) { OrganisationId = orgId; EventProductId = eventProductId; LocationId = locationId; Type = type; MaxAttendees = maxAttendees; CurrencyCode = currencyCode; Price = price; LastMinutePrice = lastMinutePrice; DaysBeforeLastMinute = daysBeforeLastMinute; } } }namespace myoWebRole.WCF { [ServiceContract(Namespace = "")] [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)] [ServiceBehavior(IncludeExceptionDetailInFaults = true)] public class SchedulerWcfService : ISchedulerWcfService { private WebServiceAppointmentController _controller; private WebServiceAppointmentController Controller { get { if (_controller == null) { _controller = new WebServiceAppointmentController(new MyobisSchedulerProvider()); } return _controller; } } [OperationContract] public IEnumerable<AppointmentData> GetAppointments(MyobisSchedulerInfo schedulerInfo) { return Controller.GetAppointments(schedulerInfo); } [OperationContract] public IEnumerable<AppointmentData> InsertAppointment(MyobisSchedulerInfo schedulerInfo, AppointmentData appointmentData) { return Controller.InsertAppointment(schedulerInfo, appointmentData); } [OperationContract] public IEnumerable<AppointmentData> UpdateAppointment(MyobisSchedulerInfo schedulerInfo, AppointmentData appointmentData) { return Controller.UpdateAppointment(schedulerInfo, appointmentData); } [OperationContract] public IEnumerable<AppointmentData> DeleteAppointment(MyobisSchedulerInfo schedulerInfo, AppointmentData appointmentData, bool deleteSeries) { return Controller.DeleteAppointment(schedulerInfo, appointmentData, deleteSeries); } [OperationContract] public IEnumerable<ResourceData> GetResources(MyobisSchedulerInfo schedulerInfo) { return Controller.GetResources(schedulerInfo); } } } <system.serviceModel> <behaviors> <endpointBehaviors> <behavior name="SchedulerWcfServiceAspNetAjaxBehavior"> <enableWebScript/> </behavior> </endpointBehaviors> </behaviors> <serviceHostingEnvironment multipleSiteBindingsEnabled="true" aspNetCompatibilityEnabled="true"/> <services> <service name="SchedulerWcfService"> <endpoint address="" behaviorConfiguration="SchedulerWcfServiceAspNetAjaxBehavior" contract="ISchedulerWcfService"/> </service> </services> </system.serviceModel><WebServiceSettings Path="../../WCF/SchedulerWcfService.svc" ResourcePopulationMode="ServerSide" />Source Error: An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below. Stack Trace: [WebException: Der Remoteserver hat einen Fehler zurückgegeben: (404) Nicht gefunden.] System.Net.WebClient.UploadDataInternal(Uri address, String method, Byte[] data, WebRequest& request) +2716592 System.Net.WebClient.UploadString(Uri address, String method, String data) +266 Telerik.Web.UI.SchedulerWebServiceClient.GetResources() +653 [Exception: An error occurred while requesting resources from the web service. Server responded with: ] Telerik.Web.UI.SchedulerWebServiceClient.GetResources() +1225 Telerik.Web.UI.RadScheduler.BindResourcesFromWebService() +102 Telerik.Web.UI.RadScheduler.PerformSelect() +117 Telerik.Web.UI.RadScheduler.CreateChildControls(Boolean bindFromDataSource) +81 System.Web.UI.Control.EnsureChildControls() +182 System.Web.UI.Control.PreRenderRecursiveInternal() +60 System.Web.UI.Control.PreRenderRecursiveInternal() +222 System.Web.UI.Control.PreRenderRecursiveInternal() +222 System.Web.UI.Control.PreRenderRecursiveInternal() +222 System.Web.UI.Control.PreRenderRecursiveInternal() +222 System.Web.UI.Control.PreRenderRecursiveInternal() +222 System.Web.UI.Control.PreRenderRecursiveInternal() +222 System.Web.UI.Control.PreRenderRecursiveInternal() +222 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +4185 <div style="margin-right: auto; margin-left: auto; margin-top: auto; width: 780px; border:solid 1px red"> <div style="width: 100%; height: auto;" align="left"> <table width="480px"> <tr style="height: 20px" align="left"> <td align="left" width="45%"> <asp:Label ID="Label1" runat="server" Text="Search By"></asp:Label> <asp:DropDownList ID="_cboSearchBy" runat="server" Width="150px"> </asp:DropDownList> </td> <td> <asp:TextBox ID="_txtFind" runat="server" Width="139px"></asp:TextBox><asp:Button ID="_btnSearch" runat="server" Text="Search" OnClick="_btnSearch_Click" /> </td> </tr> </table> </div> <div style="width: 100%;" align="left"> <table align="center"> <tr> <td> <telerik:RadGrid ID="_radGrid" runat="server" AutoGenerateColumns="False" GridLines="None" OnPageIndexChanged="_radGrid_PageIndexChanged" EnableEmbeddedSkins="False" Skin="mscSkinOffice" AllowPaging="True" AllowCustomPaging="True" OnPageSizeChanged="_radGrid_PageSizeChanged" OnDataBound="_radGrid_DataBound" Width="770px"> <ClientSettings> <Scrolling AllowScroll="True" UseStaticHeaders="True" FrozenColumnsCount="2"></Scrolling> <Resizing AllowColumnResize="True" /> </ClientSettings> <SortingSettings SortedBackColor="BurlyWood" /> <MasterTableView DataKeyNames="Key,No"> <CommandItemSettings ExportToPdfText="Export to Pdf" /> <RowIndicatorColumn FilterControlAltText="Filter RowIndicator column"> </RowIndicatorColumn> <ExpandCollapseColumn FilterControlAltText="Filter ExpandColumn column"> </ExpandCollapseColumn> <Columns> <telerik:GridTemplateColumn FilterControlAltText="Filter TemplateColumn column" UniqueName="SelectColumn" Resizable="False"> <ItemTemplate> <asp:LinkButton ID="imgbtnSelected" runat="server" Text="Select"></asp:LinkButton> </ItemTemplate> <HeaderStyle Width="50px" /> <ItemStyle HorizontalAlign="Center" /> </telerik:GridTemplateColumn> <telerik:GridBoundColumn DataField="Key" FilterControlAltText="Filter Key column" HeaderText="Key" SortExpression="Key" UniqueName="Key" Visible="False"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="No" FilterControlAltText="Filter No column" HeaderText="No." SortExpression="No" UniqueName="No"> <ItemStyle Wrap="False" /> <HeaderStyle Width="80px" /> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Name" FilterControlAltText="Filter Name column" HeaderText="Name" SortExpression="Name" UniqueName="Name"> <HeaderStyle Width="150px" /> <ItemStyle Wrap="False" /> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Location_Code" FilterControlAltText="Filter Location_Code column" HeaderText="Location" SortExpression="Location_Code" UniqueName="Location_Code"> <HeaderStyle Width="60px" /> <ItemStyle Wrap="False" /> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Address" FilterControlAltText="Filter Address column" HeaderText="Address" SortExpression="Address" UniqueName="Address"> <ItemStyle Wrap="False" /> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Address_2" FilterControlAltText="Filter Address_2 column" HeaderText="Address 2" SortExpression="Address_2" UniqueName="Address_2"> <ItemStyle Wrap="False" /> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Phone_No" FilterControlAltText="Filter Phone_No column" HeaderText="Phone No." SortExpression="Phone_No" UniqueName="Phone_No"> <ItemStyle Wrap="False" /> <HeaderStyle Width="80px" /> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Contact_No" FilterControlAltText="Filter Contact_No column" HeaderText="Contact No." SortExpression="Contact_No" UniqueName="Contact_No"> <ItemStyle Wrap="False" /> <HeaderStyle Width="80px" /> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Contact" FilterControlAltText="Filter Contact column" HeaderText="Contact" SortExpression="Contact" UniqueName="Contact"> <ItemStyle Wrap="False" /> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Credit_Limit_LCY" DataFormatString="{0:#,0.#0}" DataType="System.Decimal" FilterControlAltText="Filter Credit_Limit_LCY column" HeaderText="Credit Limit LCY" SortExpression="Credit_Limit_LCY" UniqueName="Credit_Limit_LCY"> <HeaderStyle HorizontalAlign="Right" Width="70px" /> <ItemStyle HorizontalAlign="Right" /> </telerik:GridBoundColumn> </Columns> <ItemStyle HorizontalAlign="Left" /> <AlternatingItemStyle HorizontalAlign="Left" /> </MasterTableView> <HeaderStyle Width="200px" HorizontalAlign="Left" /> <PagerStyle Mode="NextPrev" PagerTextFormat="{4} Page <strong>{0}</strong> of <strong>{1}</strong>." /> <HeaderContextMenu CssClass="GridContextMenu GridContextMenu_mscSkinOffice" EnableEmbeddedSkins="False"> </HeaderContextMenu> <FilterMenu EnableEmbeddedSkins="False" EnableImageSprites="False"> </FilterMenu> </telerik:RadGrid> </td> </tr> </table> </div> <telerik:RadScriptManager ID="RadScriptManager1" runat="server"> </telerik:RadScriptManager> <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="_radGrid"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="_radGrid" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> </telerik:RadAjaxManager></div>dnn_ctr381_Que2_Dock_MyTasks.
I get around that by calling a Javascript function that returns a control containing the name Dock_MyTasks. But, when I look at the running HTML, there are multiple HTML elements that contain the name Dock_MyTasks. They are suffixed with _T, _C, _ClientState. Here's the JavaScript I'm trying to use. Everyhing seems to execute just fine until I call the GetClientId function. What am I doing wrong?
function miClicked(sender, e) {
var MenuItem = e.get_item();
var DockName = MenuItem.get_value();
var dock = GetClientId(DockName);
var isClosed = dock.get_closed();
dock.set_closed(!isClosed);
MenuItem.Selected = !MenuItem.Selected;
}
// Gets the ASP.NET generated control ID
function GetClientId(controlId) {
var count = document.forms[0].length;
var i = 0;
var aspControlId;
for (i = 0; i < count; i++) {
aspControlId = document.forms[0].elements[i].id;
pos = aspControlId.indexOf(controlId);
if (pos >= 0) break;
}
return document.forms[0].elements[i];
}
Thank you..
<telerik:RadAjaxPanel ID="radAjaxPanel1" runat="server" LoadingPanelID="radldpnlContactInfo">
<asp:Panel ID="Panel1" runat="server" Visible="False">
<table id="Table1"><tr><td>
<telerik:RadComboBox ID="RadComboBox1" runat="server"
AutoPostBack="true" OnSelectedIndexChanged="RadComboBox1_SelectedIndexChanged">
</telerik:RadComboBox>
</td>
<td valign="top">
<br />
<asp:Button ID="button1" runat="server" OnClick="button1_Click" Text="Test1"
/><br />
<asp:Button ID="button2" runat="server" OnClick="button2_Click" Text="Test2"
/>
</td>
</tr>
</table>
</asp:Panel>
</telerik:RadAjaxPanel>