在asp.net ajax用户控件中跟踪变量值

在asp.net ajax用户控件中跟踪变量值,asp.net,asp.net-ajax,custom-controls,Asp.net,Asp.net Ajax,Custom Controls,在asp.net页面上,我创建了一个自定义ajax web用户控件,该控件显示列表值的内容(通过数据库调用加载)。该控件包括“下一步”和“上一步”按钮,以及两个文本框。我的初始版本使用会话变量(迭代器)来跟踪用户的位置,同时单击按钮并用列表[]中的值填充文本框 在我的下一次迭代中,我需要能够使用这个自定义控件,它将在一个表(或者更可能是网格)中多次出现,但是我很难弄清楚如何处理迭代器,因为会话变量显然将不再工作 有人有建议的方法或推荐的文章吗?我通过在我的用户控件上创建第二个表单解决了这个问题,

在asp.net页面上,我创建了一个自定义ajax web用户控件,该控件显示列表值的内容(通过数据库调用加载)。该控件包括“下一步”和“上一步”按钮,以及两个文本框。我的初始版本使用会话变量(迭代器)来跟踪用户的位置,同时单击按钮并用列表[]中的值填充文本框

在我的下一次迭代中,我需要能够使用这个自定义控件,它将在一个表(或者更可能是网格)中多次出现,但是我很难弄清楚如何处理迭代器,因为会话变量显然将不再工作


有人有建议的方法或推荐的文章吗?

我通过在我的用户控件上创建第二个表单解决了这个问题,该表单与UpdatePanel中包含的控件分离。在刷新这些控件之前,隔离控件(在本例中为标签)将通过编程方式指定一个值,当控件页面加载事件触发时,它将引用隔离标签值以跟踪其当前位置。我还必须将ScriptManager移出我的控制,并将其放在将使用该控件的页面上,因为该页面上将有多个自定义用户控件,并且每页只允许一个ScriptManager

<form id="NaviControl" >


<asp:UpdatePanel runat="server">
    <ContentTemplate>
        <asp:Panel ID="controlsPanel" runat="server" HorizontalAlign="Center" >
            <asp:Panel ID="Panel1" runat="server" > 
                <asp:Button ID="btnLast" runat="server" Text="Previous" Height="25px" Width="75px" OnClick="btnLast_Click" />
                <asp:TextBox ID="tbStatusCode" runat="server" ></asp:TextBox>
            </asp:Panel>
            <asp:Panel ID="Panel2" runat="server" HorizontalAlign="Center" >
                <asp:TextBox ID="tbDescription" runat="server"  ></asp:TextBox>
                <asp:Button ID="btnNext" runat="server" Text="Next" Height="25px" Width="75px" OnClick="btnNext_Click" />
            </asp:Panel>
        </asp:Panel>
    </ContentTemplate>
</asp:UpdatePanel>
</form>
<form>
<asp:Label ID="lblCounter" runat="server" visible="false" />
</form>


希望其他NUB发现这种方法有用。

如果在会话变量的末尾加上ID或类似的东西,那么每个控件都是唯一的,那么仍然可以使用会话变量。是的,但我想学习解决此问题的其他方法。有人有其他建议吗?