<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      簡單Asp.Net分頁控件

       

      因為項目中要用, 而AspNetPager又必須要用商業授權, 所以干脆自己先寫個用了.

      [DefaultProperty("Text")]
      [ToolboxData("<{0}:WebFormsPager runat=server></{0}:WebFormsPager>")]
      public class WebFormsPager : WebControl, IPostBackEventHandler
      {
          #region Property
          [Bindable(true)]
          [Category("Appearance")]
          [DefaultValue("10")]
          [Localizable(true)]
          public int PageSize
          {
              get
              {
                  int pageSize = 0;
                  object o = ViewState["PageSize"];
                  if (o == null)
                      pageSize = 1;
                  else
                      int.TryParse(o.ToString(), out pageSize);
                  return pageSize;
              }

              set
              {
                  ViewState["PageSize"] = value;
              }
          }

          [DefaultValue("1")]
          public int CurrentPageIndex
          {
              get
              {
                  int curPageIndex = 0;
                  object o = ViewState["CurrentPageIndex"];
                  if (o == null)
                      curPageIndex = 1;
                  else
                      int.TryParse(o.ToString(), out curPageIndex);
                  return curPageIndex;
              }

              set
              {
                  ViewState["CurrentPageIndex"] = value;
              }
          }

          public int RecordCount
          {
              get
              {
                  int curPageIndex = 0;
                  object o = ViewState["RecordCount"];
                  if (o == null)
                      curPageIndex = 1;
                  else
                      int.TryParse(o.ToString(), out curPageIndex);
                  return curPageIndex;
              }

              set
              {
                  ViewState["RecordCount"] = value;
              }
          }
          public int PageCount
          {
              get
              {

                  return (RecordCount / PageSize) + (RecordCount % PageSize > 0 ? 1 : 0);
              }
          }
          #endregion

          private static readonly object ClickKey = new object();

          public event EventHandler PageChanged
          {
              add
              {
                  Events.AddHandler(ClickKey, value);
              }
              remove
              {
                  Events.RemoveHandler(ClickKey, value);
              }
          }

          protected virtual void OnClick(EventArgs e)
          {
              EventHandler clickEventDelegate = (EventHandler)Events[ClickKey];
              if (clickEventDelegate != null)
              {
                  clickEventDelegate(this, e);
              }
          }

          protected override void RenderContents(HtmlTextWriter output)
          {
              if (this.CurrentPageIndex != 1)
              {
                  AddHypeLink(output, "<<", LinkButtonDescriminate.FirstButton);
                  AddHypeLink(output, "<", LinkButtonDescriminate.PreviousButton);
              }

              if (this.CurrentPageIndex != this.PageCount)
              {
                  AddHypeLink(output, ">", LinkButtonDescriminate.NextButton);
                  AddHypeLink(output, ">>", LinkButtonDescriminate.LastButton);
              }

              output.Write(string.Format("{0}/{1}", this.CurrentPageIndex, this.PageCount));
          }

          void AddHypeLink(HtmlTextWriter output, string linkName, LinkButtonDescriminate discriminate)
          {
              output.Write(string.Format("<a href=\"{0}\" title=\"Move to {2} page\">&nbsp;&nbsp;&nbsp;{1}&nbsp;&nbsp;&nbsp;</a>", Page.ClientScript.GetPostBackClientHyperlink(this, discriminate.ToString()), linkName, discriminate.ToString().Replace("Button", string.Empty)));
          }

          public void RaisePostBackEvent(string eventArgument)
          {
              LinkButtonDescriminate eventArg = LinkButtonDescriminate.DefaultValue;
              Enum.TryParse(eventArgument, out eventArg);
              switch (eventArg)
              {
                  case LinkButtonDescriminate.FirstButton:
                      this.CurrentPageIndex = 1;
                      break;
                  case LinkButtonDescriminate.PreviousButton:
                      this.CurrentPageIndex--;
                      break;
                  case LinkButtonDescriminate.NextButton:
                      this.CurrentPageIndex++;
                      break;
                  case LinkButtonDescriminate.LastButton:
                      this.CurrentPageIndex = this.PageCount;
                      break;
                  default:
                      break;
              }
              OnClick(EventArgs.Empty);
          }
      }

      public enum LinkButtonDescriminate
      {
          DefaultValue,
          FirstButton,
          PreviousButton,
          NextButton,
          LastButton
      }

      調用方式:

      前臺代碼

      <%@ Register Assembly="DemoControl" Namespace="DemoControl" TagPrefix="cc1" %>

       

      <cc1:WebFormsPager ID="WebFormsPager1" runat="server" PageSize="10"
               onpagechanged="WebFormsPager1_PageChanged" />

      后臺代碼

      private void BindGridView()
      {
          this.WebFormsPager1.RecordCount = MockData.GetData().Count;
          this.gvTest.DataSource = MockData.GetData().Skip(this.WebFormsPager1.PageSize * (this.WebFormsPager1.CurrentPageIndex - 1)).Take(this.WebFormsPager1.PageSize);
          this.gvTest.DataBind();
      }

      protected void WebFormsPager1_PageChanged(object sender, EventArgs e)
      {
          BindGridView();
      }

      因為時間的原因,文章未排版。

       

      參考文章: http://www.rzrgm.cn/clingingboy/archive/2006/08/02/466180.html

      posted @ 2011-08-30 21:57  DukeCheng  閱讀(529)  評論(1)    收藏  舉報
      主站蜘蛛池模板: 欧美人与zoxxxx另类| 野外做受三级视频| 欧洲熟妇色自偷自拍另类| 日本欧美一区二区三区在线播放| 亚洲中文字幕无码中字| 亚洲国产良家在线观看| 无码人妻斩一区二区三区| 日韩精品成人区中文字幕| 欧美日韩免费专区在线观看| 综合久久婷婷综合久久| 国产精品黄色片| 亚洲欧美综合精品成人网站| 午夜福利视频| 啊轻点灬大JI巴太粗太长了在线| 韩国无码AV片午夜福利| 久久被窝亚洲精品爽爽爽| 国产乱码精品一区二区上| 亚洲最大在线精品| 国产精品免费久久久免费| 国产熟妇久久777777| 久久热在线视频精品视频| 亚洲日韩性欧美中文字幕| 黑人巨大videos极度另类| 日韩高清不卡一区二区三区| 国产在线乱子伦一区二区| 精品国产亚洲区久久露脸| 辽宁省| 国产成人午夜福利在线播放| 娇妻玩4p被三个男人伺候| 亚洲中文字幕成人综合网| 国产亚洲精品一区二区不卡| 亚洲欧洲无码av电影在线观看| 国产成人精品一区二区三区免费| 热久在线免费观看视频| 男同精品视频免费观看网站| 波多野42部无码喷潮| 早起邻居人妻奶罩太松av| 在线 欧美 中文 亚洲 精品| jizzjizz少妇亚洲水多| 成人久久精品国产亚洲av| 欧美性受xxxx白人性爽|