protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        if (e.CommandName =="AddClass")
        {
              TextBox tb = GridView1.FooterRow.RenderControl("TBClassName") as TextBox;
 }}

解决方案 »

  1.   


     <asp:TemplateField HeaderText="栏目名称">
                <EditItemTemplate>
                    <asp:TextBox ID="TBClassName" runat="server" Text='<%# Bind("SD_ClassName") %>'></asp:TextBox>
                </EditItemTemplate>
                <ItemTemplate>
                    <asp:Label ID="Label1" runat="server" Text='<%# Bind("SD_ClassName") %>'></asp:Label>
                </ItemTemplate>
                
                    <FooterTemplate>
                            <asp:TextBox ID="TBClassName" Text='' runat="server"></asp:TextBox>
                        </FooterTemplate>
            </asp:TemplateField>
    模板列内容
      

  2.   


    ClassModel.SD_ClassName = ((TextBox)GridView1.FooterRow.RenderControl("TBClassName")).Text;这样也不行 
      

  3.   

    用FindContronl试试 protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            if (e.CommandName =="AddClass")
            {
                  TextBox tb = (TextBox)GridView1.FooterRow.FindControl("TBClassName");
     }
    }还有你的控件是不是在母版里边,如果是的话,要xxMaster.FindControl(GridView1),然后在在GridView1里边FindControl("TBClassName") 
      

  4.   

    谢谢 没注意  用错了..FindControl 用这个 ok了