Ho una GridView, gli ho settato la proprietà AllowPaging a true.
Il problema è che mi genera un codice che non mi piace neanche un pò (una table annidata in una cella).
Allora ho pensato bene di usare il <PagerTemplate>.

In pratica vorrei solo una lista di linkbuttons (pag.1 pag.2 pag.3 etc)
Ho provato a creare il tutto dinamicamente all'evento DataBound della GridView con questo codice:
codice:
    protected void GridView1_DataBound(object sender, EventArgs e)
    {
        GridViewRow pagerRow = GridView1.BottomPagerRow;
        if (pagerRow != null) 
        {
            Label pagerLabel = new Label();
            pagerLabel.Text = "Pagina "+(GridView1.PageIndex+1).ToString()+" di "+(string)GridView1.PageCount.ToString()+"";
            pagerRow.Cells[0].Controls.Add(pagerLabel);
        }
        for (int i = GridView1.PageCount-1; i >= 0; i--)
        {
            LinkButton lnk = new LinkButton();
            lnk.Text = (i + 1).ToString();
            lnk.CommandName = "Page";
            lnk.CommandArgument = i.ToString();
            lnk.CausesValidation = false;
            lnk.Command += new CommandEventHandler(lb_Command);
            if (i == GridView1.PageIndex)
            {
                lnk.CssClass = "current";
            }
            pagerRow.Cells[0].Controls.Add(lnk);
        }
    }
    void lb_Command(object sender, CommandEventArgs e)
    {
        if (e.CommandName == "Page")
            GridView1.PageIndex = Convert.ToInt32(e.CommandArgument);
    }
I link mi compaiono correttamente ma:
A) se clicco sui link non mi passa alla pagina prescelta (ricarica quella corrente) e in più
B) mi scompare la riga con il pager.

E' tutta la giornata che ci sto sbattendo la testa e online non trovo nulla che mi conforti. Qualche anima pia sa dirmi dov'è che sbaglio?