问大家一下,后台生成的文本框读取不到对应的id和里面的内容

问大家一下,这个问题就是我前端只有这样的一个GridView控件然后后台动态生成一些列,这些列里面有文本框,然后我想在后台读取到文本框输入的内容,但是我用了FindControl这个方法找不到我动态生成的列名

<cc:PagingGridView ID="PagingGridView2" Width="100%" runat="server"
                    PageSize="10" AllowPaging="false" CssClass="grid_view" OnBindDataSource="PagingGridView1_BindDataSource" OnRowDataBound="PagingGridView1_RowDataBound">
                    <EmptyDataTemplate>
                        无相关数据
                    </EmptyDataTemplate>
                    <Columns>
                    </Columns>
                    <RowStyle CssClass="td1" />
                    <HeaderStyle CssClass="td_bthead" />
                    <PagerStyle CssClass="td0" />
                    <AlternatingRowStyle CssClass="td2" />
                </cc:PagingGridView>

protected void btnSave_Click(object sender, EventArgs e)
    {
        ////txtZb.Text = "";
        //string jszb = "";
        //double result = 0;
        for (int i = 0; i < PagingGridView2.Rows.Count; i++)
        {
            //for (int j = 2; j < 4; j++)
            //{
                string name = (PagingGridView2.Rows[i].Cells[j]).Text;
                TextBox tb = PagingGridView2.FindControl("txtZb") as TextBox;
                TextBox Text1 = (TextBox)PagingGridView2.Rows[2].Cells[2].FindControl("txtZb");

                ////    if (Text1.Text != "" || Text1.Text != null)
                //{
                //    //double x = Convert.ToDouble(Text1.Text) * 0.5;
                //   //result = x+result;
                //   //jszb = Convert.ToString(result);
            //}
        }
        //}

    }

 protected void PagingGridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowIndex == -1) return;
        for (int i = 2; i < PagingGridView2.RecordCount + 1; i++)
        {
            TableCell tc = e.Row.Cells[i];
            TextBox tb = new TextBox();
            tb.ID = "txtZb"+i.ToString();
            //+ "y" + e.Row.RowIndex.ToString(); 
            tc.Controls.Add(tb);
        }
        //for (int i = 2;  i < PagingGridView2.RecordCount + 1; i++) { 
        //TextBox txt=Page.FindControl("txtZb"+i.ToString()) as TextBox;
        //string result = txt.Text;
        //}
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            try
            {
                (e.Row.FindControl("btnSp") as Button).Visible = pPageType == "sp1";
            }
            catch (Exception ex)
            {
                //PageHelper.MessageBox(this, "PagingGridView1_RowDataBound:" + ex.Message);

            }
        }
    }

img