Mam kilka elementów w ComboBox (WinForms z C #). Chcę, aby ich zawartość była statyczna, aby użytkownik nie mógł zmieniać wartości wewnątrz, gdy aplikacja jest uruchamiana. Nie chcę również, aby użytkownik dodawał nowe wartości do ComboBox
157
combo.Properties.TextEditStyle = DisableTextEditor
Jest to kolejna metoda, której używam, ponieważ zmiana
DropDownSyle
naDropDownList
sprawia, że wygląda 3D, a czasami jest po prostu brzydka.Możesz zapobiec wprowadzaniu danych przez użytkownika, obsługując
KeyPress
zdarzenie ComboBox w ten sposób.źródło
Paste
. Nie mam pojęcia, jak teraz.Paste
, musisz utworzyć fałszywe puste menu kontekstowe i przypisać je do ComboBox.Yow może zmienić DropDownStyle we właściwościach na DropDownList. To nie pokaże TextBox dla filtra.
(Zrzut ekranu udostępniony przez FUSION CHA0S .)
źródło
Próbowałem ComboBox1_KeyPress, ale pozwala usunąć znak i możesz także użyć polecenia kopiuj wklej. Mój DropDownStyle jest ustawiony na DropDownList, ale nadal nie jest używany. Zrobiłem więc poniższy krok, aby uniknąć edycji tekstu combobox.
Poniższy kod obsługuje klawisz Delete i Backspace. A także wyłącza kombinację z klawiszem sterującym (np. Ctr + C lub ctr + X)
Podczas ładowania formularza użyj poniższej linii, aby wyłączyć prawy przycisk myszy na kontrolce combobox, aby uniknąć wycinania / wklejania kliknięciem myszy.
źródło