using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Collections.Generic; using System.IO; using System.Globalization; public partial class Default10 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { getRepeaterHtml(Convert.ToInt32(Request.Form["pageindex"])); } private void getRepeaterHtml(int page) { this.Repeater1.DataSource = getNameByPage(page); this.Repeater1.DataBind(); } private IList<note> getNameByPage(int page) { IList<note> notes = new List<note>(); for (int i = 10 * (page - 1) + 1; i <= 10 * page; i++) { note note1 = new note(); note1.Name = "第" + i.ToString() + "条记录"; notes.Add(note1); } return notes; } public class note { string _name; public string Name { get { return this._name; } set { this._name = value; } } } }
net2.0 callback实现:
default8.aspx
default8.aspx.cs
using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Collections.Generic; using System.IO; using System.Globalization; public partial class Default8 : System.Web.UI.Page, ICallbackEventHandler { private int page; protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { this.Repeater1.DataSource = getNameByPage(1); this.Repeater1.DataBind(); } } private IList<note> getNameByPage(int page) { IList<note> notes = new List<note>(); for (int i = 10*(page-1) + 1; i <= 10 * page; i++) { note note1 = new note(); note1.Name = "第" + i.ToString() + "条记录"; notes.Add(note1); } return notes; } public class note { string _name; public string Name { get { return this._name; } set { this._name = value; } } } private string getRepeaterHtml(int page) { this.Repeater1.DataSource = getNameByPage(page); this.Repeater1.DataBind(); StringWriter writer1 = new StringWriter(CultureInfo.InvariantCulture); HtmlTextWriter writer2 = new HtmlTextWriter(writer1); this.Repeater1.RenderControl(writer2); writer2.Flush(); writer2.Close(); return writer1.ToString(); } #region ICallbackEventHandler 成员 public string GetCallbackResult() { return getRepeaterHtml(this.page); } public void RaiseCallbackEvent(string eventArgument) { this.page = Convert.ToInt32(eventArgument); } #endregion }