a=e.Item.Cells[4].Text  错了

解决方案 »

  1.   

    在这个事件内写DataGrid1_ItemCommand就能成功
      

  2.   

    那个4代表DataGrid的列,列是从0开始排的,4也就是第五列,你的DataGrid有没有五列
    我刚试过,可以读出来
      

  3.   

    如果模板配错了会有影响么
    <Columns>
    <asp:TemplateColumn>
    <ItemTemplate>
    <asp:Label Text="Xuexi" BorderColor="#cc33ff" Runat="server" />
    </ItemTemplate>
    <EditItemTemplate>
    <asp:TextBox ID="Code" Runat="server" />
    </EditItemTemplate>
    </asp:TemplateColumn>
    <asp:EditCommandColumn ButtonType="PushButton" CancelText="cancel" EditText="modify" UpdateText="update" />
    <asp:ButtonColumn Text="Delete" CommandName="Delete" ButtonType="PushButton"></asp:ButtonColumn>
    </Columns>
    这是我的模板
      

  4.   

    你读的是模版列当然错了,如果是绑定列就没有问题了,看着:
    string a = ((TextBox)e.Item.Cell(4).Controls[0]).Text.Trim();
    Response.Write(a);
      

  5.   

    你太有才了谢谢你。刚接触asp.net什么都不懂。