Windows Form 콤보 박스의 SelectIndex의 이상한 움직임

이하와 같은 간단한 콤보 박스로, 「치바」를 선택해・・・


닫고...


▼를 눌러 열면 ...


왠지, 「치바현」이 선택되고 있습니다.
「치바」를 내포하는 아이템이 「치바」보다 앞에 있는 경우(이 경우
「지바현」「지바시」)에, 그 아이템이 선택되어 버리는 것 같습니다.

그러나

「신이치치바」는 선택되지 않습니다.

이것으로부터 「치바」를 전방 일치로 내포하는 아이템이 선택되어 버린다는 것을 알 수 있습니다.

.NET 4.8 시스템에서 검증되었습니다.
Public Class test
    Private Sub ComboBox1_DropDown(sender As Object, e As EventArgs) Handles ComboBox1.DropDown
        Console.WriteLine("DropDown " & ComboBox1.SelectedIndex)
    End Sub

    Private Sub ComboBox1_DropDownClosed(sender As Object, e As EventArgs) Handles ComboBox1.DropDownClosed
        Console.WriteLine("DropDownClosed " & ComboBox1.SelectedIndex)
    End Sub

    Private Sub ComboBox1_SelectionChangeCommitted(sender As Object, e As EventArgs) Handles ComboBox1.SelectionChangeCommitted
        Console.WriteLine("SelectionChangeCommitted " & ComboBox1.SelectedIndex)
    End Sub
End Class

앞에서 설명한 동작을하면 콘솔에
SelectionChangeCommitted 7 // 千葉
DropDownClosed 7
DropDown 7
DropDownClosed 3 // 千葉県

그리고 출력됩니다

좋은 웹페이지 즐겨찾기