Solved

How to use AJAX toolkit script manager with user controls

Posted on 2009-06-29
1
4,830 Views
Last Modified: 2012-05-07
I am getting the error "System.InvalidOperationException: Only one instance of a ScriptManager can be added to the page." I know the error is because I have toolkitscriptmanager on the page, but i need it there. I don't know where the other declaration for a scriptmanager is??

<%@ Control Language="C#" AutoEventWireup="true" ClassName="uc_ORItem" CodeFile="uc_ORItem.ascx.cs"
    Inherits="uc_ORItem" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<style type="text/css">
    td
    {
        font-family: Tahoma;
        font-size: 12px;
    }
    .textbox
    {
        font-family: Tahoma;
        font-size: 12px;
    }
</style>
<table cellpadding="0" cellspacing="0" border="0">
    <tr>
        <td valign="middle">
            <cc1:ToolkitScriptManager EnableScriptLocalization="true" ID="ToolkitScriptManager1" runat="server">
            </cc1:ToolkitScriptManager>
            SubSet:<asp:TextBox ID="tbSubset" CssClass="textbox" runat="server" TextMode="SingleLine"
                AutoPostBack="false"></asp:TextBox>
            <!--<asp:HiddenField ID="hdSubSet" runat="server" />-->
            <asp:HiddenField ID="hdSubSetTime" runat="server" />
            <cc1:AutoCompleteExtender ID="AutoCompleteExtender1" runat="server" TargetControlID="tbSubset"
                BehaviorID="AutoCompleteEx" ServicePath="Web_Services/LookupSubSet.asmx" ServiceMethod="Get_Subset_List"
                UseContextKey="true" ContextKey="SubSet" MinimumPrefixLength="1" CompletionInterval="1000"
                EnableCaching="true" CompletionSetCount="20" DelimiterCharacters=";, :" OnClientItemSelected="itemSelected"
                CompletionListCssClass="completion_list">
            </cc1:AutoCompleteExtender>
            <%-- Prevent enter in textbox from causing the collapsible panel from operating --%>
 
            <script type="text/javascript">
            // Work around browser behavior of "auto-submitting" simple forms
            var frm = document.getElementById("aspnetForm");
 
            if (frm) 
            {
                frm.onsubmit = function() { return false; };
            }
                                            
            function itemSelected(source, eventArgs)
            {
                //alert("key: " + eventArgs.get_text() + "  value: " + eventArgs.get_value());
                //document.all["hdSubset"].value = eventArgs.get_text();
                document.all["hdSubSetTime"].value = eventArgs.get_value();
                //__doPostBack('hidButton','AutoCompleteItemSelected'); 
                document.forms[0].hidButton.click();
            }
            </script>
 
            <input type="submit" id="hidButton" style="display: none;" />
            &nbsp; Set:<asp:TextBox ID="tbSet" runat="server" CssClass="textbox"></asp:TextBox>
            &nbsp;Quantity:<asp:TextBox ID="tbQuantity2" runat="server" CssClass="textbox" AutoPostBack="true"
                Width="50px"></asp:TextBox>
            &nbsp;MEPRS:<asp:TextBox ID="tbTotal2" runat="server" CssClass="textbox" Width="50px"></asp:TextBox>
            <asp:ImageButton ID="ibtDeleteItems" runat="server" ImageUrl="~/Images/delete.gif"
                AlternateText="Delete Item" OnClick="ibtDeleted_Clicked" />
        </td>
    </tr>
</table>

Open in new window

0
Comment
Question by:mjoseph23
1 Comment
 

Accepted Solution

by:
mjoseph23 earned 0 total points
ID: 24739413
Found the scriptmanager on the page creating the control. Removed from there.
0

Featured Post

The New “Normal” in Modern Enterprise Operations

DevOps for the modern enterprise offers many benefits — increased agility, productivity, and more, but digital transformation isn’t easy, especially if you’re not addressing the right issues. Register for the webinar to dive into the “new normal” for enterprise modern ops.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Performance in games development is paramount: every microsecond counts to be able to do everything in less than 33ms (aiming at 16ms). C# foreach statement is one of the worst performance killers, and here I explain why.
The article shows the basic steps of integrating an HTML theme template into an ASP.NET MVC project
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …
The Email Laundry PDF encryption service allows companies to send confidential encrypted  emails to anybody. The PDF document can also contain attachments that are embedded in the encrypted PDF. The password is randomly generated by The Email Laundr…

839 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question