单击LinkBut​​ton

时间:2017-11-16 13:07:25

标签: c# asp.net updatepanel asprepeater

我有一个内置LinkBut​​ton的转发器。单击会引发一个事件,该事件将转发器ID作为CommandArgument传递,并在GridView中显示有关该ID的详细信息。如何避免单击导致页面重新加载Repeater?

我将Repeater包装在UpdatePanel中,结果恰恰相反:GridView未加载,而转发器则是。

<asp:UpdatePanel ID="UP1" runat="server">
    <ContentTemplate>
        <asp:Panel ID="Panel1" runat="server" ScrollBars="Vertical" Height="600px">
        <asp:Repeater runat="server" id="RepeaterKalendar">
            <ItemTemplate>  
                <asp:label ID="Month_lbl" runat="server" Text='<%# Bind("Month") %>'/>
                <asp:label ID="Pretag_lbl" runat="server" Text='<%# Bind("PRETAG") %>'/>
                <asp:LinkButton ID="ButtonSelect" runat="server" CommandArgument = '<%# Eval("date") %>' Text='<%# Bind("TAG") %>' OnClick="GetDetails"/> 
                <asp:label ID="Posttag_lbl" runat="server" Text='<%# Bind("POSTTAG") %>'/>
                <asp:label ID="Monthend_lbl" runat="server" Text='<%# Bind("MonthEnd") %>'/>
            </ItemTemplate>
        </asp:Repeater>
        </asp:Panel>
     </ContentTemplate>
     <Triggers>
        <asp:AsyncPostBackTrigger ControlID="ButtonSelect" EventName="Click" />
    </Triggers>
</asp:UpdatePanel>

我已经添加了Panel标签 - 我最初跳过它,认为它会分散注意力 - 因为我发现Repeater实际上没有重新加载。在LinkBut​​ton Click之后,看起来面板内的滚动位置会丢失,因为它会跳转到它的起始位置。我将此行为解释为Repeater反弹的结果。

对面板内滚动位置丢失的任何评论?

0 个答案:

没有答案