0

asp.net ページでの作業 (データベース呼び出しによって読み込まれる) リスト値の内容を表示するカスタム ajax Web ユーザー コントロールを作成しました。コントロールには、「次へ」ボタンと「前へ」ボタン、およびいくつかのテキスト ボックスが含まれます。私の最初のバージョンでは、セッション変数 (反復子) を使用して、ユーザーがボタンをクリックし、テキスト ボックスに List[] の値を入力している間、その場所を追跡していました。

次のイテレーションでは、このカスタム コントロールを使用できるようにする必要があります。これは、テーブル (またはおそらくグリッド) に何度も表示されますが、セッション変数が明らかに機能しなくなります。

誰かが提案されたアプローチ、または推奨される記事を持っていますか?

4

1 に答える 1

0

UpdatePanel に含まれるコントロールから分離されたユーザー コントロールに 2 番目のフォームを作成することで、この問題を解決しました。これらのコントロールが更新される前に、分離されたコントロール (この場合はラベル) にプログラムで値が割り当てられ、コントロールの Page_Load イベントが発生すると、分離されたラベルの値を参照して現在の位置を追跡します。ページにはこれらのカスタム ユーザー コントロールがいくつかあり、ページごとに 1 つの 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>

他のいくつかのナブがこのアプローチが役立つことを願っています。

于 2013-09-25T16:05:13.460 に答える