0
我遇到一些緩慢的問題,試圖用這段代碼來刷新我的數據網格, 我想要做的是操縱ACROSS變量列(selltype_code)。另一種方法來優化SQL的結果VB.NET
objConn.Open()
Dim sqlConn As String = ("SELECT item_code, item_name, item_quantity, selltype_code, item_selldetail FROM qa_items")
Dim objDataAdapter As New MySqlDataAdapter(sqlConn, objConn)
Dim ds As New DataSet
objDataAdapter.Fill(ds, "items")
'Fill datagridview with FOR CICLE
For i As Int16 = 0 To ds.Tables("items").Rows.Count - 1
If ds.Tables("items").Rows(i).Item("selltype_code") = 1 Then
With Me.resultitems_seach_item
.Item(3, i).Style.ForeColor = ColorTranslator.FromOle(RGB(39, 74, 109)) 'Color para Precio
.Item(3, i).Value = ds.Tables("items").Rows(i).Item("item_selldetail") 'Valor para Precio
.Item(4, i).Style.ForeColor = Color.DarkGray
.Item(4, i).Value = "---"
.Item(5, i).Style.ForeColor = Color.DarkGray
.Item(5, i).Value = "---"
.Item(6, i).Style.ForeColor = Color.DarkGray
.Item(6, i).Value = "---"
End With
ElseIf ds.Tables("items").Rows(i).Item("selltype_code") = 2 Then
With Me.resultitems_seach_item
.Item(3, i).Style.ForeColor = Color.DarkGray
.Item(3, i).Value = "---"
.Item(4, i).Style.ForeColor = Color.DarkGray
.Item(4, i).Value = "---"
.Item(5, i).Style.ForeColor = ColorTranslator.FromOle(RGB(39, 74, 109)) 'Color para Precio
.Item(5, i).Value = ds.Tables("items").Rows(i).Item("item_selldetail")
.Item(6, i).Style.ForeColor = Color.DarkGray
.Item(6, i).Value = "---"
End With
ElseIf ds.Tables("items").Rows(i).Item("selltype_code") = 3 Then
With Me.resultitems_seach_item
.Item(3, i).Style.ForeColor = Color.DarkGray
.Item(3, i).Value = "---"
.Item(4, i).Style.ForeColor = ColorTranslator.FromOle(RGB(39, 74, 109)) 'Color para Precio
.Item(4, i).Value = ds.Tables("items").Rows(i).Item("item_selldetail")
.Item(5, i).Style.ForeColor = Color.DarkGray
.Item(5, i).Value = "---"
.Item(6, i).Style.ForeColor = Color.DarkGray
.Item(6, i).Value = "---"
End With
Else
With Me.resultitems_seach_item
.Item(3, i).Style.ForeColor = Color.DarkGray
.Item(3, i).Value = "---"
.Item(4, i).Style.ForeColor = Color.DarkGray
.Item(4, i).Value = "---"
.Item(5, i).Style.ForeColor = Color.DarkGray
.Item(5, i).Value = "---"
.Item(6, i).Style.ForeColor = ColorTranslator.FromOle(RGB(39, 74, 109)) 'Color para Precio
.Item(6, i).Value = ds.Tables("items").Rows(i).Item("item_selldetail")
End With
End If
Next i
objConn.Close()
請勿選擇_all_表中的項目。它越大,你的代碼看起來越慢。介紹分頁。 – Oded
爲什麼不使用後臺工作組件來執行冗長的工作以避免用戶的遲緩行爲 – sarepta