1

AJAXTool キットから CalenderExtender 機能を追加しようとしています。コントロールをページに追加し、ビルドしてデバッグすると、次のエラーが発生します。

コントロールにコード ブロック (つまり <% ... %>) が含まれているため、Controls コレクションを変更できません。

説明: 現在の Web 要求の実行中に未処理の例外が発生しました。エラーの詳細とコード内のどこでエラーが発生したかについては、スタック トレースを確認してください。

例外の詳細: System.Web.HttpException: コントロールにコード ブロック (つまり <% ... %>) が含まれているため、Controls コレクションを変更できません。

ソース エラー: 現在の Web 要求の実行中に未処理の例外が生成されました。例外の発生元と場所に関する情報は、以下の例外スタック トレースを使用して特定できます。
スタック トレース: [HttpException (0x80004005): コントロールにコード ブロックが含まれているため、Controls コレクションを変更できません (つまり、<% ... %>)。] System.Web.UI.ControlCollection.Add(Control child) +9600379 AjaxControlToolkit. ScriptObjectBuilder.RegisterCssReferences(コントロール コントロール) +702 AjaxControlToolkit.ExtenderControlBase.OnLoad(EventArgs e) +62 System.Web.UI.Control.LoadRecursive() +54 System.Web.UI.Control.LoadRecursive() +145 System.Web. UI.Control.LoadRecursive() +145 System.Web.UI.Control.LoadRecursive() +145 System.Web.UI.Control.LoadRecursive() +145 System.Web.UI.Page.ProcessRequestMain(ブール値 includeStagesBeforeAsyncPoint、ブール値 includeStagesAfterAsyncPoint ) +772

これがページのコード全体です。コードにタグがない限り、正常に機能します。ツール キットが web.config ファイルに登録されていて、マスターページが ToolkitScriptManager を使用している

<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPages/AdminLayout.Master" AutoEventWireup="true" CodeBehind="ManageReleaseInfo.aspx.cs" Inherits="FFInfo.Staff.Sections.ManageReleaseInfo" %>
<asp:Content ID="phContent" ContentPlaceHolderID="phContent" runat="server">
<h2 class="text-center">
    <asp:Literal ID="lblTitle" runat="server" />
</h2>

<asp:Label ID="lblResults" CssClass="text-error" runat="server" />

<asp:ValidationSummary ID="vsErrorSummary" CssClass="text-error" DisplayMode="BulletList" HeaderText="The following errors have been found:" runat="server" />

<p>
    What section is this for?
    <asp:DropDownList ID="ddlSectionList" AppendDataBoundItems="true" runat="server">
        <asp:ListItem Value="-1" Text="Select Section Title" />
    </asp:DropDownList>

    <br />Release Title:
    <asp:TextBox ID="tbReleaseTitle" Columns="50" runat="server" />
    <asp:RequiredFieldValidator ID="ReleaseTitleRequired" ControlToValidate="tbReleaseTitle" Display="Dynamic" CssClass="text-error" Text="*" ErrorMessage="Please there the release title." runat="server" />

    <br />Platform:
    <asp:DropDownList ID="ddlPlatform" AppendDataBoundItems="true" runat="server">
        <asp:ListItem Value="-1" Text="Select Platform" />
    </asp:DropDownList>

    <br />Publisher:
    <asp:DropDownList ID="ddlPublisher" AppendDataBoundItems="true" runat="server">
        <asp:ListItem Value="-1" Text="Select Publisher" />
    </asp:DropDownList>

    <br />Release Location:
    <asp:DropDownList ID="ddlLocation" AppendDataBoundItems="true" runat="server">
        <asp:ListItem Value="-1" Text="Select Locaiton" />
    </asp:DropDownList>

    <br />Estimated Release Date:
    <asp:DropDownList ID="ddlReleaseDate" AppendDataBoundItems="true" runat="server">
        <asp:ListItem Value="-1" Text="Select Estimated Date" />
    </asp:DropDownList>

    <br />Exact Release Date:
    <asp:TextBox ID="tbReleaseDate" AutoCompleteType="Disabled" runat="server" />
    <asp:CalendarExtender ID="ceReleaseDate" TargetControlID="tbReleaseDate" runat="server" />
    <asp:RegularExpressionValidator ID="ReleaseDateCheck" ControlToValidate="tbReleaseDate" ValidationExpression="^([0-9]{1,2})[./-]+([0-9]{1,2})[./-]+([0-9]{2}|[0-9]{4})$" Display="None" ErrorMessage="Please enter a valid date in MM/DD/YYYY format please." runat="server" />
</p>
</asp:Content>
4

1 に答える 1

4

夕食に行って戻ってきた後、私はこれを再びグーグルで検索し始め、 http: //forums.asp.net/t/1172295.aspx/1で非常に現実的な投稿を見つけました

テストでは、マスター ページに問題の原因となっているスタイルをバンドルしました。私のタグで、style.render タグを PlaceHolder タグでラップするだけでした。それが完了すると、すべてがうまく機能しています。

于 2013-05-27T22:31:47.187 に答える