从数组VB.NET中删除记录

时间:2016-01-12 17:55:02

标签: .net arrays vb.net multidimensional-array

我正在尝试从VB.Net中的数组中删除记录,但我永远无法删除正确的记录

在我的代码中,intPosition是我想要删除的所需记录的位置。 Customers是3D数组的名称,NumberOfCustomers可以视为数组的大小。

  If MsgBox("Are you sure you want to delete this record?", MessageBoxButtons.YesNo) = Windows.Forms.DialogResult.Yes Then
        NumberOfCustomers -= 1
        For i = intPosition + 1 To NumberOfCustomers
            Customers(i - 1) = Customers(i)
        Next
        NumberOfCustomers -= 1
        ReDim Preserve Customers(NumberOfCustomers)
        Call SaveCustomer()
    End If

请有人在VB.NET修改或找到类似的代码。

由于

1 个答案:

答案 0 :(得分:4)

我建议你不要使用数组,因为这样的操作效率非常低。相反,您应该使用其中一个内置类,例如List(Of T),它更适合您尝试使用它。

Dim customers = New List(Of Customer)

'populate your list however you do it.

If MsgBox("Are you sure you want to delete this record?", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
    customers.RemoveAt(position)
End If