using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;namespace linkBtn
{
    [DefaultProperty("Text")]
    [ToolboxData("<{0}:WebCustomControl1 runat=server></{0}:WebCustomControl1>")]
    public class WebCustomControl1 : CompositeControl
    {
        [Bindable(true)]
        [Category("Appearance")]
        [DefaultValue("")]
        [Localizable(true)]
        public string Text
        {
            get
            {
                String s = (String)ViewState["Text"];
                return ((s == null) ? String.Empty : s);
            }            set
            {
                ViewState["Text"] = value;
            }
        }
        private int _iPrevCount = 5;
        /// <summary>
        /// 前部分记录数量
        /// </summary>
        [Bindable(true)]
        [CategoryAttribute("Appearance")]
        [Localizable(true)]
        [DescriptionAttribute("前部分记录数量")]
        [DefaultValueAttribute("前部分记录数量")]
        public int iPrevCount
        {
            get
            {
                return ((ViewState["iPrevCount"] == null) ? this._iPrevCount : (int)ViewState["iPrevCount"]);            }            set
            {
                this._iPrevCount = value;
                ViewState["iPrevCount"] = value;
            }
        }
        private int _iNextCount = 5;
        /// <summary>
        /// 后部分记录数量
        /// </summary>
        [Bindable(true)]
        [CategoryAttribute("Appearance")]
        [Localizable(true)]
        [DescriptionAttribute("后部分记录数量")]
        [DefaultValueAttribute("后部分记录数量")]
        public int iNextCount
        {
            get
            {
                return ((ViewState["iNextCount"] == null) ? this._iNextCount : (int)ViewState["iNextCount"]);            }            set
            {                ViewState["iNextCount"] = value;
            }
        }
        //数字按钮队列
        private List<LinkButton> linkArray = new List<LinkButton>();
        protected override void RecreateChildControls()
        {
            EnsureChildControls();
        }
        protected override void CreateChildControls()
        {
            #region 注册linkbutton
            for (int i = 1; i <= this.iNextCount + this.iPrevCount; i++)
            {
                LinkButton _linkGoNum = new LinkButton();
                _linkGoNum.ID = "linkGoNum" + i.ToString();
                _linkGoNum.CommandArgument = i.ToString();
                _linkGoNum.Text = i.ToString();
                this.Controls.Add(_linkGoNum);
                this.linkArray.Add(_linkGoNum);
            }            #endregion
        
        }
        protected override void RenderContents(HtmlTextWriter output)
        {
            for (int i = 0; i < this.linkArray.Count; i++)
            {
                this.linkArray[i].RenderControl(output);
            
            }
            
        }
    }
}
本人想生成分页的数字按钮
_linkGoNum.Text = i.ToString();//第几页
分页样式如  6 7 8 9 10 ... 100 101 102 103 104 105
页面注册10个linkbutoon
_linkGoNum.Text为内容依次为6 7 8 9 10 ... 100 101 102 103 104 105
在子控件创建的时候怎样才能加入这些数字呢
如何动态插入想要插入的数字呢?例如这个_linkGoNum.Text的内容是由此
控件的某两个属性计算得到的 iRecordCount iPageSize iCurrentPage