0

データページャーに添付されているリストビューにリンクを作成しました。ユーザーがリンクをクリックすると、左側にコンテンツが表示されますが、データページャーは任意のページからページ 1 に変更されます。

4

1 に答える 1

1

各リンクにページ番号を示すクエリ文字列フィールドを追加する必要があります。次に、datapager コントロールの querystringfield 属性を、その querystring フィールドの名前と同じに設定する必要があります。

例えば:

   <asp:DataPager ID="dpItems" runat="server" PagedControlID="lvItems" PageSize="10" QueryStringField="pageNumber">

MSDN から: http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.datapager.querystringfield.aspx

ページング計算を自分で行いたい場合は、実行時に StartRowIndex プロパティを設定することもできます。ただし、ページを直接設定することはできません。たとえば、1 ページに 10 レコードを表示していて、2 ページ目を表示したい場合、ランタイム コードで myDataPager.StartRowIndex = 20 を設定します。

または、datapager のフィールドをセットアップして querystringfield 値を設定するときに、datapager がこの計算を自動的に処理し、ページング コントロールを生成することもできます。次へ/前へのボタン、数値ページ リンクを使用するか、テンプレートで独自のページング コントロールを定義することができます。

独自のページング コントロールを定義する場合は、次のようになります。

次に、lvItems の OnDataBound イベントで、(Placeholder)lvItems.FindControl("phPageNumberButtons") でプレースホルダーを取得し、コントロールをプレースホルダーに追加します。

また、リストビューの ID と等しい PagedControlID を定義していることを確認してください。

フィールドの詳細については、次の MSDN 記事へのリンクを参照してください: msdn.microsoft.com/en-us/library/

于 2010-04-29T15:42:32.023 に答える