没找到相关的TextBox,是否你的DataGrid中的控件id和FindControl里指定的名称不相符?

解决方案 »

  1.   

    addressTextBox = (TextBox)(e.Item.Cells[2].FindControl("FirstName"));
    改为:
    addressTextBox = (TextBox)(e.Item.FindControl("FirstName"));其它几个也改一下试试。
      

  2.   

    控件的ID不对,不可能重复的,如果你加的时候是使用的同样的名字
    .Net会帮你换掉,你可以在客户端用IE打开HTML代码看看TextBox的ID变成了什么
      

  3.   

    你的DataGrid绑定方法在什么地方调用的?如果是在Page_Load中,那么你有没有加上判断
    if (!IsPostBack)
    {
    DataGrid1.DataBind();
    }
      

  4.   

    把你DataGrid的html代码帖出来。
      

  5.   

    或者你使用e.Item.Cells[2].Controls[0]来代替e.Item.Cells[2].FindControl试试
      

  6.   

    如果FirstName在DataGrid中是第一列,你可以试试:
    nameTextBox = (TextBox)e.Item.Cells[1].Controls[0];
    addressTextBox = (TextBox)e.Item.Cells[2].Controls[0];
    managerTextBox = (TextBox)e.Item.Cells[3].Controls[0];
    numberTextBox = (TextBox)e.Item.Cells[4].Controls[0];
      

  7.   

    我的datagrid代码是:
    <asp:datagrid id="DataGrid2" style="Z-INDEX: 101; LEFT: 178px; POSITION: absolute; TOP: 186px" runat="server" BorderColor="Tan" BorderWidth="1px" BackColor="LightGoldenrodYellow" CellPadding="2" GridLines="None" ForeColor="Black" Width="392px" Height="225px" OnEditCommand="DataGrid2_EditCommand" OnUpdateCommand="DataGrid2_UpdateCommand" OnCancelCommand="DataGrid2_CancelCommand">
    <SelectedItemStyle ForeColor="GhostWhite" BackColor="DarkSlateBlue"></SelectedItemStyle>
    <AlternatingItemStyle BackColor="PaleGoldenrod"></AlternatingItemStyle>
    <HeaderStyle Font-Bold="True" BackColor="Tan"></HeaderStyle>
    <FooterStyle BackColor="Tan"></FooterStyle>
    <Columns>
    <asp:ButtonColumn Text="删除" CommandName="Delete"></asp:ButtonColumn>
    <asp:TemplateColumn>
    <ItemTemplate>
    <asp:LinkButton runat="server" Text="修改" CommandName="Edit" CausesValidation="false"></asp:LinkButton>
    </ItemTemplate>
    <EditItemTemplate>
    <asp:LinkButton runat="server" Text="确定" CommandName="Update"></asp:LinkButton>&nbsp;
    <asp:LinkButton runat="server" Text="取消" CommandName="Cancel" CausesValidation="false"></asp:LinkButton>
    </EditItemTemplate>
    </asp:TemplateColumn>
    </Columns>
    <PagerStyle HorizontalAlign="Center" ForeColor="DarkSlateBlue" BackColor="PaleGoldenrod"></PagerStyle>
    </asp:datagrid>请帮我看看
      

  8.   

    既没有BoundColumn,模板列中又没有TextBox,你怎么能找到TextBox呢?