InsertAt の意外な力

配列やコレクション内でのインデックスの指定は、
最後の要素のインデックス(要素の数 - 1 )を超えると例外が発生する。

 a = array[5] ' ← array の要素数が 5 の時、例外。

ところが、InsertAt では、最後の要素のインデックス + 1 を指定しても、
例外が発生せずに機能する。

 array.InsertAt( "1" , 5 )

これは、ネットで調べてもよい文献が見つからず、
仕様なのかどうか不明だった。
最後のインデックス+1 を指定した場合は、Add と同じ結果になる、
と解釈したが、使用は自己責任で。

' データグリッドビューで選択中の行の下に新しい行を挿入する

i = DataGridView1.SelectedRows(0) ' 選択中の行のインデックス
DataGridView1.Rows.Insert(i + 1, newRow) ' 最下行を選択していた場合、さらに下の行に追加される。
最下行を選択している場合を分けて、Add を呼ぶ必要がない。