by WebSurfer
21. September 2015 13:04
記事数が増えてきて、画面の下の方に表示されるページャーの表示が下の画像のように崩れるので、設定を変更しました。どのように変更したかを備忘録として書いておきます。

具体的にはページャーに表示されるページの数を減らしました(上の画像で言うと、99 と 107 の 2 つを減らしました)。
その数字は App_Code/Controls/PostPager.cs で MaxPages = 12 としてハードコーディングされており、それを 10 に変更しました。
変更は以下のコードに示すように 1 行だけで済みます。ただし、該当箇所を探すのと、ソースを修正してサーバーの PostPager.cs と差し替えなければならないのがちょっと面倒かも。
private static IEnumerable<int> PageList(int total, int current)
{
var pages = new List<int>();
var midStack = new List<int>();
// should be more then 4
// 2015/9/21 記事数が増えページャーの幅が広がって表示が
// 崩れるので初期値 12 を 10 に変更。
const int MaxPages = 10;
if (MaxPages > total)
{
for (var i = 1; i <= total; i++)
{
pages.Add(i);
}
}
else
{
const int Midle = (MaxPages - 4) / 2;
// always show first two
pages.Add(1);
pages.Add(2);
// ・・・中略・・・
// always show last two
pages.Add(total - 1);
pages.Add(total);
}
return pages;
}
なお、ブログ1(BlogEngine.NET 1.6.1 を使用)のページャーも ページャーの移植 で書きましたようにページャーだけブログ2のものに差し替えており、それもついでに変更しました。