现在的位置: 首页 > 综合 > 正文

Repeater 控件的的分页程序

2013年12月27日 ⁄ 综合 ⁄ 共 3646字 ⁄ 字号 评论关闭

protected bool ShowRepeater(int intTemp)
  {
   int intTotalPageCount = 0;
   DataTable dtTemp = new DataTable();

   dtTemp.Columns.Add("IRAIBI");
   dtTemp.Columns.Add("TOTAL_COUNT");
   dtTemp.Columns.Add("SYUMONFLAG_COUNT");
   dtTemp.Columns.Add("IRAIYOUFLAG_COUNT");
   dtTemp.Columns.Add("NIFUDAFLAG_COUNT");
   dtTemp.Columns.Add("KAKUTEIFLAG_COUNT");

   ReturnTable rtSelect =
    new SW_1010Process().SearchProcess(strIraibiFrom,strIraibiTo,strSyukasaki);
   if (rtSelect.Flag == false)
   {
    MessageShow(rtSelect.ErrText);
    return false;
   }
   if (0 == rtSelect.Table.Rows.Count)
   {
    SetEnabled(0);
    NullDataBind();
    return true;
   }
  
   //Get TotalPageCount
   if (rtSelect.Table.Rows.Count % 14 != 0)
   {
    intTotalPageCount = rtSelect.Table.Rows.Count / 14 + 1;
   }
   else
   {
    intTotalPageCount = rtSelect.Table.Rows.Count / 14;
   }

   if (intTemp < 1)
   {
    intTemp = 1;
   }
   if ( intTemp > intTotalPageCount )
   {
    intTemp = intTotalPageCount;
   }

   //Page State Set
   if ( intTotalPageCount == 1 )
   {
    intCurrentPageNum = 1;
    SetEnabled(0);
   }
   else if ( 1 == intTemp && intTemp < intTotalPageCount )   //第1ページ state
   {
    intCurrentPageNum = 1;
    SetEnabled(1);
   }
   else if ( intTemp > 1 && intTemp < intTotalPageCount)   //中間のページ state
   {
    intCurrentPageNum = intTemp;
    SetEnabled(2);
   }   
   else if ( intTemp == intTotalPageCount && intTotalPageCount != 1)//最後のページ state
   {    
    intCurrentPageNum = intTotalPageCount;
    SetEnabled(3);
   }

   #region CurrentPageNum == TotalPageCount
   
   if (intCurrentPageNum == intTotalPageCount)
   {
    //the data add     
    for (int intIndex = (intCurrentPageNum - 1) * 14 ; intIndex < rtSelect.Table.Rows.Count; intIndex++)
    {
     DataRow row = dtTemp.NewRow();
     row["IRAIBI"] =
      DateFormat(rtSelect.Table.Rows[intIndex]["IRAIBI"].ToString().Trim());
     row["TOTAL_COUNT"] =
      NumFormat(rtSelect.Table.Rows[intIndex]["TOTAL_COUNT"].ToString().Trim());
     row["SYUMONFLAG_COUNT"] =
      NumFormat(rtSelect.Table.Rows[intIndex]["SYUMONFLAG_COUNT"].ToString().Trim());
     row["IRAIYOUFLAG_COUNT"] =
      NumFormat(rtSelect.Table.Rows[intIndex]["IRAIYOUFLAG_COUNT"].ToString().Trim());
     row["NIFUDAFLAG_COUNT"] =
      NumFormat(rtSelect.Table.Rows[intIndex]["NIFUDAFLAG_COUNT"].ToString().Trim());
     row["KAKUTEIFLAG_COUNT"] =
      NumFormat(rtSelect.Table.Rows[intIndex]["KAKUTEIFLAG_COUNT"].ToString().Trim());
     dtTemp.Rows.Add(row);
    }
    //the null data add
    for (int i = dtTemp.Rows.Count; i < 14; i++)
    {
     DataRow row = dtTemp.NewRow();
     row["IRAIBI"] = "";
     row["TOTAL_COUNT"] = "";
     row["SYUMONFLAG_COUNT"] = "";
     row["IRAIYOUFLAG_COUNT"] = "";
     row["NIFUDAFLAG_COUNT"] = "";
     row["KAKUTEIFLAG_COUNT"] = "";
     dtTemp.Rows.Add(row);
    }   
   }
   
   #endregion

   #region CurrentPageNum < TotalPageCount
   
   if (intCurrentPageNum < intTotalPageCount )
   {
    int intIndex = (intCurrentPageNum - 1) * 14 ;
    for (int i = 0; i < 14; i++, intIndex++ )
    {
     DataRow row = dtTemp.NewRow();
     row["IRAIBI"] =
      DateFormat(rtSelect.Table.Rows[intIndex]["IRAIBI"].ToString().Trim());
     row["TOTAL_COUNT"] =
      NumFormat(rtSelect.Table.Rows[intIndex]["TOTAL_COUNT"].ToString().Trim());
     row["SYUMONFLAG_COUNT"] =
      NumFormat(rtSelect.Table.Rows[intIndex]["SYUMONFLAG_COUNT"].ToString().Trim());
     row["IRAIYOUFLAG_COUNT"] =
      NumFormat(rtSelect.Table.Rows[intIndex]["IRAIYOUFLAG_COUNT"].ToString().Trim());
     row["NIFUDAFLAG_COUNT"] =
      NumFormat(rtSelect.Table.Rows[intIndex]["NIFUDAFLAG_COUNT"].ToString().Trim());
     row["KAKUTEIFLAG_COUNT"] =
      NumFormat(rtSelect.Table.Rows[intIndex]["KAKUTEIFLAG_COUNT"].ToString().Trim());
     dtTemp.Rows.Add(row);
    }   
   }
   #endregion 
  
   rptSearchResult.DataSource = dtTemp;
   rptSearchResult.DataBind(); 
   return true;
  }

抱歉!评论已关闭.