QA@IT

【ASP.NET】GridViewのヘッダーを2行にしたら、PagerのTop表示ができなくなる。

3781 PV

開発環境[ASP.NET VB2010 C#.NET .NETFramework4.0]

いつもお世話になっております。

GridViewに対し、ヘッダーを2行にする設定を行ったところ、
GridViewのPager表示が正常にされなくなりました。

※2行にする処理は、前回こちらでご教示頂いた内容にそっています。
 http://qa.atmarkit.co.jp/q/9247

現在、ページャーを上下に表示するようにしていますが、下のみが表示されます。
ページャー自体はGridの表示が1ページでも出すように下記処理は実施しています。

if (sender != null && (sender as GridView).DataSource != null)
{
    //ページャーが存在する場合、1ページしかなくても強制的に表示する。
    GridView gv = (GridView)sender;
    GridViewRow gvrT = (GridViewRow)gv.TopPagerRow;
    GridViewRow gvrB = (GridViewRow)gv.BottomPagerRow;
    if (gvrT != null) gvrT.Visible = true;
    if (gvrB != null) gvrB.Visible = true;
}
  • 先のスレッドでもコメントしましたが、ListView を使ってはいかがですか? 前のスレッドのような裏技的なことしてまで GridView を細工するのは、ListView という手段がある以上、間違っていると言っても過言ではないです。 -
  • いつもお世話になっております。
    期間的な問題で現状のままでと思っていましたが。
    一つだけご確認させてください。
    ListViewに切り替えた場合、下記実装は可能でしょうか?
    ・列固定機能
    ・ヘッダーの縦書
    ・ヘッダーの複数行及び行結合
    ・ページャーの実装(件数、5ページ分のページ移動、前後。また1ページのみでもページャーの表示)
    以上が実装可能なら切替実施したいと思います。
    -
  • その文章から質問者さんが意図するところが全て完全に読めるわけではないので、読めない部分まで可能かどうかは分かりません。前回は後出しも多々ありましたし。ご自分で ListView を使ってやってみて、問題点が出てきたら聞いていただければ、分かる範囲で回答します。 -
  • その際は新たに別のスレッドを立てて質問していただければと思います。このスレッドで GridView の質問を続けたいのであれば、質問者さんのやりたいことを全て含めた、コピペすれば回答者が問題を再現できる必要最低限のサンプルコードをアップしてください。DB が必要なら Northwind とか Pub を使ってください。 -
ウォッチ

この質問への回答やコメントをメールでお知らせします。