1

内部に UpdatePanel を含む ModalPopupExtender があります。UpdatePanel には、LinkBut​​ton のリストを持つ Repeater があります。

<asp:Button ID="btnShow" runat="server" />
<ajaxToolkit:ModalPopupExtender ID="mpe" runat="server" TargetControlID="btnShow" PopupControlID="pnl" CancelControlID="btnCancel" />
<asp:Panel ID="pnl" runat="server">
    <asp:UpdatePanel ID="up" runat="server" UpdateMode="Conditional">
        <ContentTemplate>
            <asp:Repeater ID="rep" runat="server" onitemcommand="rep_ItemCommand">
                <HeaderTemplate>
                    <ul>
                </HeaderTemplate>
                <ItemTemplate>
                    <li>
                        <asp:Label ID="lblAssignedTo" runat="server" Text='<%# Eval("AssignedTo") %>' />
                        <asp:LinkButton ID="lnkUnassign" runat="server" CommandName="Unassign" CommandArgument='<%# Eval("Id") %>' />
                        <ajaxToolkit:ConfirmButtonExtender ID="cbeUnassign" runat="server" TargetControlID="lnkUnassign" ConfirmText="Are you sure you want to unassign this item?" />
                    </li>
                </ItemTemplate>
                <FooterTemplate>
                    </ul>
                </FooterTemplate>
            </asp:Repeater>
        </ContentTemplate>
    </asp:UpdatePanel>
</asp:Panel>

protected void rep_ItemCommand(object source, RepeaterCommandEventArgs e)
{
    if (e.CommandName == "Unassign")
    {
        //do something
        up.Update();
    }
}

LinkBut​​ton をクリックすると、UpdatePanel が更新されます。これを行いますが、ModalPopupExtender も閉じます。

ModalPopupExtender を非表示にせずに UpdatePanel を更新する方法はありますか? ModalPopupExtender.Show() を呼び出すことはできますが、ページがちらつきます。

ありがとう。

4

1 に答える 1

0

さて、リピーター内のLinkBut​​tonに何か問題があることがわかりました。代わりにボタンコントロールを使用しました。

于 2013-02-26T09:03:38.367 に答える