VB.Net フォームで ComboBox の選択されたインデックスを 0 に設定しようとしています。
エラーの原因となっているコード行は次のとおりです。
Me.CBB_Version.SelectedIndex = UBound(WorkpackageVersions)
この特定のケースでは、WorkpackageVersions 配列に 1 つの要素しかありません。つまり、UBound は 0 です。
行を変更して読んでも:
Me.CBB_Version.SelectedIndex = 0
エラーが発生します。「'2' の値は 'index' には無効です」
Visual Studio のイミディエイト ウィンドウをチェックインすると、ComboBox の内部には 1 つの項目があります。選択されたインデックスは「-1」であるため、現在何も選択されていません。
- デバッグモードでエラーが発生した後、「続行」して、もう一度行を実行すると、完全に機能します。
- この行の前にブレークポイントを配置し、イミディエイト ウィンドウで実行すると、これと同じエラーが発生しますが、もう一度実行すると機能します。
エラーが示唆するように、インデックスを 2 の値 (3 つではなく 1 つの要素がある場合) に設定しようとしているため、失敗しているとしか思えません。
しかし、0 をハードコーディングすると、どのようにこれが可能になるのでしょうか?