投稿者 るしぇ  (社会人) 投稿日時 2009/11/13 00:16:14
この手の問題は良く起こります。
SelectedIndexChanged イベントは、
>SelectedIndex プロパティが変更された場合に発生します。(ヘルプ(MSDN)から抜粋)

ListView でも ComboBox でも同じ名前のイベントは同じような動きをします。
選択項目が変更されたときにイベントが起こると考えればいいのですが、
この変更された状態に、「選択項目が1つも無い」状態も含まれることを
知っておくと良いでしょう。

ListView で、人間は1行目を選んだ状態から2行目を選んだ場合、
1) 1行目選択
2) 2行目選択
という2段階の処理だと思います。
しかし実際のプログラムでは、
1) 1行目選択
2) 1行目選択状態の解除(選択行は無い)
3) 2行目選択
という3段階を踏みます。
選択解除の処理が無いと、選択行が2行になってしまいます。

「選択項目が1つも無い」状態でプログラムがどういった動きをするか、
よく確認しましょう。(確認する手段はヘルプで説明されています)