........................................略
     TableCell tc4 = new TableCell();
            TextBox findbox = new TextBox();
            findbox.ID = "FindBox";
            findbox.EnableViewState = true;
            findbox.SkinID = "FindBox";
            Button bn = new Button();
             bn.Text = "查找";
            bn.Click += new EventHandler(this.FindButtonClick);
            tc4.Controls.Add(findbox);
            tc4.Controls.Add(new LiteralControl(" "));
            tc4.Controls.Add(bn);
            tc4.Controls.Add(new LiteralControl(" "));
........................................略    protected void FindButtonClick(object sender, EventArgs e)
    {
        GridViewRow pagerRow = this.GridView1.BottomPagerRow;
        TextBox txtNum = (TextBox)pagerRow.Cells[0].FindControl("FindBox");
        this.Label1.Text =txtNum.Text.ToString();      
    } // 可以取到控件ID,但取不到输入的值

解决方案 »

  1.   


    lz
    ==========
    findbox 的viewstate可能在FindButtonClick事件的autopostback时丢失.
      

  2.   

    假如你在gridview中添加一个模板列,并 在模板列中存放了一个dropdownlist控件。那么,问题就是:你如何去操作这个dropdownlist控件????//对于gridview控件: System.Web.UI.WebControls.GridViewRow rows = (GridViewRow)((Control)sender).Parent.Parent;//获取对于ui层次结构中服务器控件的父控件的父控件的引用
            DropDownList list = (DropDownList)rows.FindControl("DropDownList1");我用过这个你试试看。
      

  3.   

    TextBox txtNum = (TextBox)RowFindControl("FindBox"); 
      

  4.   

    谢谢各位
    都不是因为这个
    BottomPagerRow 是只读的,如何解决?