I am getting the following message in a user control I have created:
Script control 'rrLocationRationg' is not a registered script control. Script controls must be registered using RegisterScriptControl() before calling RegisterScriptDescription().
Parameter name: scriptControl
I have the following code working, however if I uncomment the code in RadCBLocations_ItemsRequested I get the above error. I need to be able to do this as the data pulled back is to large unless there is some type of filtering done. Any suggestion would be greatley appreciated.
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="LocationDDL.ascx.cs" Inherits="Phoenix.UserControls.LocationDDL" %> <%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %> <asp:ScriptManagerProxy ID="ScriptManagerProxy1" runat="server"> </asp:ScriptManagerProxy> <telerik:RadAjaxPanel ID="rapRefNo" runat="server"> <telerik:RadComboBox ID="RadCBLocations" Runat="server" EmptyMessage="Choose a Location" HighlightTemplatedItems="true" EnableLoadOnDemand="true" DropDownWidth="755px" Height="200px" Width="253px" onitemsrequested="RadCBLocations_ItemsRequested"> <HeaderTemplate> <table style="width: 730px" cellspacing="0" cellpadding="0"> <tr> <td style="width: 200px;"> Name</td> <td style="width: 200px;"> Address</td> <td style="width: 150px;"> City</td> <td style="width: 30px;"> State</td> <td style="width: 150px;"> Rating</td> </tr> </table> </HeaderTemplate> <ItemTemplate> <table style="width: 730px" cellspacing="0" cellpadding="0"> <tr> <td style="width: 200px;"> <%# DataBinder.Eval(Container, "Text")%> </td> <td style="width: 200px;"> <%# DataBinder.Eval(Container, "Attributes['Address']")%> </td> <td style="width: 150px;"> <%# DataBinder.Eval(Container, "Attributes['City']")%> </td> <td style="width: 30px;"> <%# DataBinder.Eval(Container, "Attributes['State']")%> </td> <td style="width: 150px;"> <telerik:RadRating ID="rrLocationRating" runat="server" ItemCount="5" OnRate="rrLocationRating_Rate" Value = <%#Convert.ToDouble(DataBinder.Eval(Container, "Attributes['Rating']"))%> SelectionMode="Continuous" Precision = "Item" Orientation="Horizontal" AutoPostBack="true" ClientIDMode="Predictable"> </telerik:RadRating> </td> </tr> </table> </ItemTemplate> </telerik:RadComboBox> </telerik:RadAjaxPanel> if (_userId != 0) { _searchString = "alab"; if (_searchString.Length > 1) { //Fill the Locations list List<Location> currentLocations = PhoenixData.getLocations(_searchString, false, true, false, false, false); //Sort the locations by name currentLocations.Sort(delegate(Location location1, Location location2) { return location2.Name.CompareTo(location1.Name); }); //Create the favorites class to retrieve favorite locations FavoritesRetriever myFavorites = new FavoritesRetriever(FavoritesRetriever.favoriteTables.Location, _userId); //get the locations back sorted by rating ratedLocations = myFavorites.RetrieveRatedEntities<Location>(currentLocations); if (!Page.IsPostBack) { string emptyStr = ""; //Populate the rated items in the list foreach (Location loc in ratedLocations) { RadComboBoxItem item = new RadComboBoxItem(); item.Text = loc.Name; item.Value = loc.Id.ToString(); if (loc.Address != null) { item.Attributes.Add("Address", emptyStr + loc.Address.Address1); item.Attributes.Add("City", emptyStr + loc.Address.City); item.Attributes.Add("State", emptyStr + loc.Address.State); } item.Attributes.Add("Rating", loc.Rating.ToString()); RadCBLocations.Items.Add(item); item.DataBind(); } } } } else { throw (new MissingFieldException("UserID is required")); } } /// <summary> /// Method rrStopRating_Rate created on 1/11/2011 /// </summary> /// <remarks> /// Saves the changed rating back to the database /// </remarks> protected void rrLocationRating_Rate(object sender, EventArgs e) { //Gets the stop id by parsing the id of the changed rating to get the index, which is then applied to ratedstops to get the stop id int objectid = ratedLocations[int.Parse(((RadRating)sender).Parent.ClientID.Substring(((RadRating)sender).Parent.ClientID.LastIndexOf('i') + 1))].Id; //Gets the new value of the favorite int value = int.Parse(((RadRating)sender).DbValue.ToString()); PhoenixData.SaveFavorite(2, objectid, _userId, value); } /// <summary> /// </summary> /// <value></value> /// <remarks> /// The unique id of the user you want the list to retrieve the favorites for. /// </remarks> public int UserId { set { _userId = value; } } public string SearchString { set { _searchString = value; } } protected void RadCBLocations_ItemsRequested(object sender, RadComboBoxItemsRequestedEventArgs e) { // _searchString = e.Text; // if (e.Text.Length > 1) // { // //Fill the Locations list // List<Location> currentLocations = PhoenixData.getLocations(_searchString, false, true, false, false, false); // //Sort the locations by name // currentLocations.Sort(delegate(Location location1, Location location2) { return location2.Name.CompareTo(location1.Name); }); // //Create the favorites class to retrieve favorite locations // FavoritesRetriever myFavorites = new FavoritesRetriever(FavoritesRetriever.favoriteTables.Location, _userId); // //get the locations back sorted by rating // ratedLocations = myFavorites.RetrieveRatedEntities<Location>(currentLocations); // //if (!Page.IsPostBack) // //{ // string emptyStr = ""; // //Populate the rated items in the list // foreach (Location loc in ratedLocations) // { // RadComboBoxItem item = new RadComboBoxItem(); // item.Text = loc.Name; // item.Value = loc.Id.ToString(); // if (loc.Address != null) // { // item.Attributes.Add("Address", emptyStr + loc.Address.Address1); // item.Attributes.Add("City", emptyStr + loc.Address.City); // item.Attributes.Add("State", emptyStr + loc.Address.State); // } // item.Attributes.Add("Rating", loc.Rating.ToString()); // RadCBLocations.Items.Add(item); // item.DataBind(); // } // } } } }