0

asp.net 4.0 のグリッド ビューを使用しています。ページネーションを使いたい。SQLクエリでページネーションを処理しています。グリッドに表示したいレコードの数だけを取得しています。グリッドに総レコード数を設定して、総レコード数に応じてグリッドにページ番号 (例: 1 2 3 ....8) が表示されるようにします。私のグリッドは、表示されている現在のページ番号を教えてくれるはずです。総レコード数に従ってページ番号を設定できません。これについて私を助けてください。前もって感謝します。

4

2 に答える 2

1

ストア プロシージャを使用し、PageIndex と PageSize に基づいてデータを返すという、これまでに得たより良いアプローチです。

 <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false">
 <Columns>
    //your data
 </Columns>
 </asp:GridView>

これはページネーションを示しています

<asp:Repeater ID="rptPager" runat="server">
<ItemTemplate>
    <asp:LinkButton ID="lnkPage" runat="server" Text = '<%#Eval("Text") %>' CommandArgument = '<%# Eval("Value") %>' Enabled = '<%# Eval("Enabled") %>' OnClick = "Page_Changed"></asp:LinkButton>
</ItemTemplate>
</asp:Repeater>

必要なものはすべてここにあります: SQL Server ストアド プロシージャを使用した ASP.Net GridView のカスタム ページング

于 2012-11-07T12:58:33.680 に答える
1

ページングを取得するために結果セット全体を戻すことは、おそらくあなたが望んでいる方法ではありません。GridView コントロールを実際に拡張し、仮想アイテム カウント プロパティを導入する必要があります。次に、グリッド内のすべてのレコードのカウントに仮想アイテム カウントを渡す必要があります。また、OnPageIndexChanging イベントが現在のページ インデックスを次のページに設定するようにする必要があります。

于 2012-11-07T12:59:03.580 に答える