0

ボタンの OnClick イベントに問題があります。ユーザー コントロール (「ヘッダー」) には、実行時に他のユーザー コントロールを生成するプレース ホルダー (「phContent」) を更新する更新ボタンがあります。ただし、ボタンの OnClick イベントは、プレースホルダーのコンテンツ全体が読み込まれるまで発生しません。

ページ.aspx

<ext:ContentHeader ID="header" runat="server" Visible="false" />
<asp:UpdatePanel ID="upControl" runat="server" UpdateMode="Conditional" ChildrenAsTriggers="false">
    <ContentTemplate>
        <asp:PlaceHolder ID="phContent" runat="server"></asp:PlaceHolder>
    </ContentTemplate>
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="header" EventName="OnFormSubmit" />
    </Triggers>
</asp:UpdatePanel>

UserControl.ascx

<div>
    <asp:Button ID="btnRefresh" runat="server" Text="Refresh" OnClick="btnRefresh_OnClick" />
</div>

UserControl.cs

protected void btnRefresh_OnClick(object sender, EventArgs e)
{
    //some code

    OnFormSubmit(this, e);
}
public delegate void UserControlFormSubmit(object sender, EventArgs e);
public event UserControlFormSubmit OnFormSubmit;
4

2 に答える 2

0

updatepanel にもボタンを配置する必要があります。

<ext:ContentHeader ID="header" runat="server" Visible="false" />
<asp:UpdatePanel ID="upControl" runat="server" UpdateMode="Conditional" ChildrenAsTriggers="false">
    <ContentTemplate>
        <asp:Button ID="btnRefresh" runat="server" Text="Refresh" OnClick="btnRefresh_OnClick" />
    </ContentTemplate>
</asp:UpdatePanel>
于 2013-10-10T02:55:45.620 に答える