我正在尝试从使用带分页的数据表的gridview中的文本框中获取值。
它显示数据表的前10行,即使gridview内有50行以上。
我为每一行添加了一个文本框,当您向其添加值时,它会检查该值是否存在,然后将该值作为数量添加到数据库中。
我的代码有效,但它只能查看当前分页页面的文本框数量而不是所有值,我该如何解决?
这是我的代码:
Dim index As Integer = 0
Dim row As GridViewRow = gvPartsAvailable.Rows(index)
For Each oItem As GridViewRow In gvPartsAvailable.Rows
Dim txt1 As TextBox = CType(oItem.Cells(6).FindControl("txtQty"), TextBox)
If txt1.Text = "" Then
Else
Dim con As SqlClient.SqlConnection
Dim cmd As SqlClient.SqlCommand
con = New SqlClient.SqlConnection(System.Configuration.ConfigurationManager.AppSettings("ConnectionString").ToString)
con.Open()
cmd = New SqlClient.SqlCommand
cmd.CommandText = "INSERT INTO [dbo].[tbl_TMGGoodsOrderDetail] ([OrderID], [PartNumber], [Line], [Description], [Description2], [Price], [Quantity]" &
") VALUES (@OrderID, @PartNumber, @Line, @Description, @Description2, @Price, @Quantity)"
cmd.Parameters.AddWithValue("@OrderID", ID)
cmd.Parameters.AddWithValue("@PartNumber", oItem.Cells(1).Text)
cmd.Parameters.AddWithValue("@Line", oItem.Cells(2).Text)
cmd.Parameters.AddWithValue("@Description", oItem.Cells(3).Text)
cmd.Parameters.AddWithValue("@Description2", oItem.Cells(4).Text)
cmd.Parameters.AddWithValue("@Price", oItem.Cells(5).Text.Replace("$", ""))
cmd.Parameters.AddWithValue("@Quantity", txt1.Text)
cmd.Connection = con
cmd.ExecuteNonQuery()
con.Close()
End If
Next