Jak zablokować combobox aby nie można było dodać własnych znaków

0

Witam
Obiekt combobox wyswietla mi z dane z tabeli datagrid, chodzi o to że jest ich dużo więc muszę mięć to pole aktywne z włączoną asystą i Listview.
Pytanie skoro nie mogę użyć dropdownlist to jak ustawić combobox aby nie można było dodać własnych rzeczy tylko te z listy ?

1

Sposobów jest wiele. Możesz sprawdzić czy jest ustawiony SelectedIndex

0
             comboBox1.DropDownStyle = ComboBoxStyle.DropDownList;
 

Użytkownik będzie mógł tylko wybrać jedną z opcji, które Ty dodasz z kodu.

Edit:
nie doczytałem że nie chcesz dropDownList używać.
Możesz np. wykorzystać Event KeyPress comboBoxa i tam już możesz zrobić co potrzebujesz.
Np. MessageBox.Show("Wara od klawiatury"); albo coś w ten deseń :)

0

wstawiłem dwa różne kody keypress ale żaden nie działa:

Private Sub ComboBox_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles ComboBox.KeyDown
        e.Handled = True
    End Sub

ten nic nie zmienił mogę pisać co mi się podoba nawet jak nie znajduję się na liście

 Private Sub ComboBox_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles ComboBox.KeyDown
        e.SuppressKeyPress = True
    End Sub

ten zablokował możliwość pisania w comboboxie, a ja potrzebuję że mogę napisać, później wybrać ewentualnie z listview która się pokaże ale że nie mogę wprowadzać innych wartości niż są w comboboxie.

Próbowałem też użyć ComboBox.SelectedIndex ale nie bardzo mi to wychodzi i wywala błędy,
ktoś jakoś pomoże

0

Ale wiesz że musisz sobie to zdarzenie jakoś oprogramować? samo sobie magicznie nic nie zrobi.

1 użytkowników online, w tym zalogowanych: 0, gości: 1