ここではベースから外れているかもしれませんが、MS サイトのこのコードは、少し変更すると機能しません。申し訳ありませんが、ほぼ午前 2 時です。int にはどのような変数を指定する必要がありますか? 「指定されたキャストは無効です」というメッセージが表示されてプログラムがクラッシュします。
ArrayList OddEven = new ArrayList();
            foreach (int i in lbList.Items)
            OddEven.Add(i);
            foreach (int i in OddEven)
            {
                if (i % 2 == 0)
                    lbEven.Items.Add(i);
                else
                    lbOdd.Items.Add(i);
            }