For a As Integer = 0 To dgv2.RowCount - 2
dgv2.Rows(a).Cells(2).Value = dgv2.Rows(a).Cells(0).Value dgv2.Rows(a).Cells(1).Value
Next
uj5u.com熱心網友回復:
假設您想在計算中DBNull解釋為0,您可以使用If()(一種三元條件運算子的 VB 版本)有條件地決議為該值。所以而不是這個:
dgv2.Rows(a).Cells(0).Value
你會有這樣的事情:
If(dgv2.Rows(a).Cells(0).Value = DBNull.Value, 0, dgv2.Rows(a).Cells(0).Value)
這基本上意味著“如果資料庫中的值為空,則使用零,否則使用資料庫中的值”。
所以整行可能看起來像:
dgv2.Rows(a).Cells(2).Value = If(dgv2.Rows(a).Cells(0).Value = DBNull.Value, 0, dgv2.Rows(a).Cells(0).Value) If(dgv2.Rows(a).Cells(1).Value = DBNull.Value, 0, dgv2.Rows(a).Cells(1).Value)
順便說一句,因為很明顯這會使代碼行變得更長且更難以閱讀,因此在可能的情況下將其抽象為任何型別的輔助函式或擴展方法將是一個很好的下一步。
uj5u.com熱心網友回復:
我曾經TryParse檢查過是否為空。即使決議失敗Cell0并且Cell1將為零。我選擇了Integer但任何數字決議都應該有效
For a As Integer = 0 To dgv2.RowCount - 2
Dim Cell0 As Integer
Dim Cell1 As Integer
Integer.TryParse(CStr(dgv2.Rows(a).Cells(0).Value), Cell0)
Integer.TryParse(CStr(dgv2.Rows(a).Cells(1).Value), Cell1)
dgv2.Rows(a).Cells(2).Value = Cell0 Cell1
Next
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/315669.html
標籤:网络
