PDA

View Full Version : Trying to retrieve Checkbox status from Web datagrid


dlombardi
02-02-2005, 08:45 AM
I have added a template column to my datagrid and put checkbox in.

I want the user to make multiple selections and then write them to a database.

after the Items are checked they click a button I then iterate through the datagrid to see which items are checked. the value always comes back as false.

I have used this code before but it's not working now. Is there something wrong??

Help the code in question is BOLD
Try

Dim cm As New SqlClient.SqlCommand
Dim cn As New SqlClient.SqlConnection
Dim rowadd As DataRow
Dim i, x, y, z As Integer
Dim cb As New CheckBox
Dim dgi As DataGridItem
Dim tblTemp As New DataTable
Dim drTemp As DataRow

cn.ConnectionString = "Data Source=his-development;Initial Catalog=Discharge;User ID=sa;Password=developer"

If cn.State = ConnectionState.Closed Then
cn.Open()
End If

cm.Connection = cn
cm.Parameters.Add("@ACCT", SqlDbType.NVarChar, 50)
cm.Parameters.Add("@DESCR", SqlDbType.NVarChar, 50)
cm.Parameters.Add("@DOSE", SqlDbType.NVarChar, 50)
cm.Parameters.Add("@ROUTE", SqlDbType.NVarChar, 50)
cm.Parameters.Add("@FC", SqlDbType.NVarChar, 50)
cm.CommandText = "INSERT INTO PTMED(ACCT, DESCR, DOSE, ROUTE, FC) VALUES(@ACCT,@DESCR ,@DOSE ,@ROUTE ,@FC )"

tblTemp.Columns.Add("ACCT")
tblTemp.Columns.Add("DESCR")
tblTemp.Columns.Add("DOSE")
tblTemp.Columns.Add("ROUTE")
tblTemp.Columns.Add("FC")
z = 0

For Each dgi In DG1.Items

cb = dgi.FindControl("chkBox")

If cb.Checked Then
drTemp = tblTemp.NewRow()
drTemp.Item(0) = txtAcct.Text
drTemp.Item(1) = dgi.Cells(0).Text
drTemp.Item(2) = dgi.Cells(1).Text
drTemp.Item(3) = dgi.Cells(2).Text
drTemp.Item(4) = dgi.Cells(3).Text
tblTemp.Rows.Add(drTemp)
z = z + 1
End If
Next
If z > 0 Then
For y = 0 To z - 1
cm.Parameters("@ACCT").Value = tblTemp.Rows(y).Item(0)
cm.Parameters("@DESCR").Value = tblTemp.Rows(y).Item(1)
cm.Parameters("@DOSE").Value = tblTemp.Rows(y).Item(2)
cm.Parameters("@ROUTE").Value = tblTemp.Rows(y).Item(3)
cm.Parameters("@FC").Value = tblTemp.Rows(y).Item(4)
cm.ExecuteNonQuery()
Next

End If

Catch ex As Exception

End Try

thank you for your help in advance