如何在Repeater中为LinkBut​​ton提供AsyncPostBackTrigger

时间:2014-08-15 12:36:04

标签: c# asp.net webforms asprepeater

在我的页面中,我有2个中继器。在第一个中继器我有一个LinkBut​​ton.On项目命令的第一个中继器链接按钮我填充第二个中继器。我试图避免每次点击回发,但UpdatePanel无法避免发布回来。

这是code.aspx

<asp:ScriptManager runat="server"></asp:ScriptManager>
<div>
    <asp:UpdatePanel runat="server">
        <ContentTemplate>
            <asp:Repeater ID="rptIndvidualButtons" runat="server" onitemcommand="rptIndvidualButtons_ItemCommand">
                <ItemTemplate>
                    <ul>
                        <li class="button">
                            <asp:LinkButton ID="lnkBtnIndvidual" runat="server" Text='<%#Eval("PackageType")%>'></asp:LinkButton>
                        </li>
                    </ul>
                </ItemTemplate>
            </asp:Repeater>
        </div>
        <div style="clear:both">                  
            <asp:Repeater ID="rptIndvidual" runat="server">
                <ItemTemplate>
                    <div runat="server" id="divBronzeIndvidual">
                        <ul class="pricing-table" id="ulBronze">
                            <li class="title">
                                <div class="item-title">
                                    <asp:Label ID="lblIndvPkgName" runat="server" Text='<%#Eval("PackageName")%>'></asp:Label>
                                </div>
                            </li>
                        </ul>
                    </div>
                </ItemTemplate>
            </asp:Repeater>
        </div>
    </ContentTemplate>
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="rptIndvidualButtons" />
    </Triggers>
</asp:UpdatePanel>

从上面的代码可以帮助我吗?

1 个答案:

答案 0 :(得分:1)

尝试为rptIndvidualButtons.itemDataBound事件中的链接按钮调用RegisterAsyncPostBackControl

var lnkBtnIndvidual = (LinkButton)e.Item.FindControl("lnkBtnIndvidual")'
ScriptManager1.RegisterAsyncPostBackControl(lnkBtnIndvidual);