foreach(DataGridItem m_item in this.DataGrid2.Items)
{
if(((CheckBox)m_item.Cells[0].FindControl("cb")).Checked==true)
{
}
}

解决方案 »

  1.   

    如果你的book_id列的<ItemTemplate>是这样定义的:
    <ItemTemplate>
       <%# DataBinder.Eval(Container.DataItem, "book_id") %>
    </ItemTemplate>那么:
    Label DelID = (Label) book.Items[i].FindControl("DelID");
    -->
    string book_id = book.Items[i].Cells[n].Text;   //n为你的book_id的列的序号
    string IDSql="delete from book where book_id="+book_id;
      

  2.   

    <asp:TemplateColumn>
    <HeaderStyle Width="4%" BackColor="#CCCC66"></HeaderStyle>
    <ItemTemplate>
    <asp:CheckBox ID="Remove" Runat="server" />
    <asp:Label Visible="False" ID="DelID" Runat="server" Text='<%# DataBinder.Eval(Container,"DataItem.book_id") %>'>
    </asp:Label>
    </ItemTemplate>
    </asp:TemplateColumn>我的book_id是上面的:
    可是你的方法还是不可以
    还有什么解决方案吗?
      

  3.   

    多谢 seesea125(雨天) 
    你的方法我测试通过了
    再次感谢!