1

これは私のマークアップです:

<asp:UpdatePanel runat="server" ID="updEml" UpdateMode="Conditional">
        <ContentTemplate>
            <asp:LinkButton runat="server" Text="+ Add Email" ID="lnkAddEmail" OnClick="lnkAddEmail_Click" />
            <div id="Emlpopup" style="width: 470px; display: none; height: 200px;">
                <uc:AddEditEmailAddress runat="server" ID="ucAdEdEml" />
            </div>
        </ContentTemplate>
        <Triggers>
            <asp:AsyncPostBackTrigger ControlID="lnkAddEmail" EventName="Click" />
            <asp:AsyncPostBackTrigger ControlID="btnAdEdEmail" EventName="Click" />
        </Triggers>
    </asp:UpdatePanel>

ご覧のとおり、私の UpdateMode は Conditional に設定されています。lnkAddEmail または btnAdEdEmail をクリックしたときに更新されるようにします。しかし、問題は btnAdEdEmail が UserControl 内にあるため、例外が発生することです

「ID 'btnAdEdEmail' のコントロールが、UpdatePanel 'updEml' のトリガーに対して見つかりませんでした。」

. この問題を回避するにはどうすればよいですか?

4

1 に答える 1

0

デフォルトでは、UpdatePanel の ChildrenAsTriggers プロパティは true に設定されています。これは、ポストバックを起動する内部のコントロールが更新を引き起こすことを意味するため、トリガーを指定する必要はありません。

于 2012-05-29T08:16:51.903 に答える