1

C# のデータ サーバー コントロールの 1 つにカスタム ページングを記述しようとしています。デリゲートが起動しません。以下はコードです。

次のマークアップがあります。

<asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder>

次の C# コード:

 protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            PageSize = 3;
            using (var db = new MyDBEntities())
            {
                Repeater1.DataSource = db.Enquiries.ToList().Take(3);
                Repeater1.DataBind();
                PrintNumber();
            }
        }
    }

    private void PrintNumber()
    {
        using (var db = new MyDBEntities())
        {
            var total = db.Enquiries.Count();
            var division = total / PageSize;
            var mod = total % PageSize;
            totalPages = mod == 0 ? division : division + 1;


            for (int i = 1; i <= totalPages; i++)
            {
                LinkButton btn = new LinkButton();
                btn.Text = i.ToString();
                btn.ID = "PagerButton" + i.ToString();
                btn.Click += new EventHandler(btn_Click);
                PlaceHolder1.Controls.Add(btn);

            }
        }
    }

    protected void btn_Click(object sender, EventArgs e)
    {
        var btn = (Button)sender;
        var txt = btn.Text;
    }

私は次のレンダリングされたマークアップを持っています。

<a id="PagerButton1" href="javascript:__doPostBack('ctl00$ContentPlaceHolder1$PagerButton1','')">1</a>
<a id="PagerButton2" href="javascript:__doPostBack('ctl00$ContentPlaceHolder1$PagerButton2','')">2</a>
<a id="PagerButton3" href="javascript:__doPostBack('ctl00$ContentPlaceHolder1$PagerButton3','')">3</a>

リンク ボタンをクリックしてもデリゲートが起動しません。助けてください..ありがとう。

4

0 に答える 0