Просто сдвинуть все элементы справа от него на один влево:
Dim a() As Int32 = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
Dim deletedindex As Int32 = 5
For i As Int32 = deletedindex To a.GetUpperBound(0) - 1
a(i) = a(i+1)
Next
Можно также отказаться от Array и использовать ArrayList. Он работает
по другим принципам, работает на порядок медленнее, но зато там жетско
не задается размер массива и можно очень просто удалять/добавлять
элементы в середине массива.
Павел, благодарю за интерестную альтернативу.
Вариант с ArrayList тоже хорош, но при присваивании массива Array переменной типа ArrayList получается коллекция массивов, что лишает возможности использовать методы Remove, RemoveAt по отношению к элементу вложеного массива.
Dim a() As Int32 = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
Dim arr1 As Array
Dim arrLst As New ArrayList