读书人

为什么小弟我删除不了。DataGrid里面的

发布时间: 2011-12-28 22:45:21 作者: rapoo

为什么我删除不了。。DataGrid里面的CheckBox选中删除问题

Dim i As Integer
Dim ChBox As CheckBox
For i = 0 To DataGrid1.Items.Count - 1
ChBox = CType(DataGrid1.Items(i).Cells(0).FindControl( "CheckBox1 "), CheckBox)
If ChBox.Checked = True Then
Dim conn As New SqlConnection
conn.ConnectionString = "server=127.0.0.1;uid=sa;pwd=;database=netexam "
conn.Open()
Dim sql As String
sql = "delete from question where id=ChBox "
Dim cmd As New SqlCommand(sql, conn)
cmd.ExecuteNonQuery()
bind()
End If
Next

[解决办法]
因为你没有在循环结束就调用了Bind()方法, 如果你选择的不是第一行, 下面的CheckBox的选择全都没有效了, 你只需把Bind()的调用放在For循环后就OK了, 如下。
Dim i As Integer
Dim ChBox As CheckBox
Dim label1 As Label

For i = 0 To DataGrid1.Items.Count - 1
ChBox = CType(DataGrid1.Items(i).Cells(0).FindControl( "CheckBox1 "), CheckBox)

label1 = CType(DataGrid1.Items(1).FindControl( "label1 "), Label)
If ChBox.Checked = True Then
Dim conn As New SqlConnection
conn.ConnectionString = "server=127.0.0.1;uid=sa;pwd=;database=netexam "
conn.Open()
Dim sql As String
sql = "delete from question where id= ' " + label1.Text + " ' "
Dim cmd As New SqlCommand(sql, conn)
cmd.ExecuteNonQuery()
End If
Next
bind()

读书人网 >asp.net

热点推荐