У меня есть некоторые элементы в ComboBox (WinForms с C #). Я хочу, чтобы их содержимое было статичным, чтобы пользователь не мог изменять значения внутри при запуске приложения. Я также не хочу, чтобы пользователь добавил новые значения в ComboBox
157
combo.Properties.TextEditStyle = DisableTextEditor
Это еще один метод я использую , потому что изменения
DropDownSyle
вDropDownList
он выглядит 3D , а иногда его просто уродливой.Вы можете предотвратить ввод данных пользователем, обрабатывая
KeyPress
событие ComboBox следующим образом.источник
Paste
тоже. Я понятия не имею, как сейчас.Paste
вам нужно создать поддельное пустое контекстное меню и назначить его ComboBox.Yow может изменить DropDownStyle в свойствах на DropDownList. Это не покажет TextBox для фильтра.
(Скриншот предоставлен FUSION CHA0S .)
источник
Я пробовал ComboBox1_KeyPress, но он позволяет удалить символ, и вы также можете использовать команду копирования и вставки. Мой DropDownStyle установлен в DropDownList, но все еще бесполезен. Поэтому я сделал ниже шаг, чтобы избежать редактирования текста в выпадающем списке.
Ниже код обрабатывает клавишу удаления и возврата. А также отключает комбинацию с управляющей клавишей (например, ctr + C или ctr + X)
При загрузке формы используйте строку ниже, чтобы отключить щелчок правой кнопкой мыши на элементе управления списком, чтобы избежать вырезания / вставки с помощью щелчка мыши.
источник