Pratik Golchha Ответов: 2

Как остановить цветовое выделение выбранного элемента в поле со списком?


Привет,

Я использую поле со списком в WinForm.
Когда я выбираю любой элемент в поле со списком, цвет фона выбранного элемента отображается синим.
Я хочу удалить этот синий цвет фона (особенно при загрузке формы, пытался установить фокус на другой элемент управления в форме, но комбо-подсветка не удалена), но все же хочу, чтобы элемент был выбран.

Может кто-нибудь помочь в этом, пожалуйста?

Sergey Alexandrovich Kryukov

Почему бирка "ADO.NET", почему бы не "WinForms"? Ну, уберите одно и добавьте другое.
--СА

Tejas Vaishnav

Удалите ненужный тег..

2 Ответов

Рейтинг:
20

Christian Graus

Если элемент управления не позволяет установить цвет фона для выбранных элементов в качестве свойства, то вам нужно будет создать свой собственный элемент управления, нарисованный владельцем, чтобы рисовать так, как вы хотите.

Существует свойство BackColor, что происходит, когда вы его устанавливаете ?


Рейтинг:
1

Member 12886468

Ваш текст в поле со списком выделяется, потому что фокус установлен на поле со списком. Выбрав поле со списком, вы можете направить свою программу на выделение метки. Это работает, потому что метки не меняют цвета при выделении. Мой приведенный ниже код имеет поле со списком под названием ddlSound и метку под названием lblFiveName.

Private Sub ddlSound_SelectedIndexChanged(ByVal sender As System.Объект, бывал е как система.EventArgs) обрабатывает ddlSound.Разделе мы рассмотрим

Если ddlSound.Text = "Звук Включен", То
bSound = True
Конец, Если

Если ddlSound.Text = "Sound Off" Тогда
bSound = False
Конец, Если

lblFiveName.Focus() 'эта строка удаляет синий фокус из поля со списком

Конец Подводной Лодки


Dave Kreskowiak

Вы публикуете ответ на вопрос пятилетней давности, на который уже был дан ответ. Ваше решение также является "взломом", но на самом деле это не очень хорошее решение.

Member 12886468

Я ответил на вопрос пятилетней давности, потому что совсем недавно столкнулся с этой проблемой и предпочел свое решение. Возможно, другие предпочтут обширное Программирование другого решения. Но, несмотря на это, хорошо иметь выбор. Кроме того, я не имел успеха с решением свойства BackColor.

Форумы - отличный источник для изучения тонкостей программирования. Комментарии г-на Кресковяка - это неправильный этикет. Когда представлены нерабочие решения, я раньше никогда не читал оскорбительных ответов типа «взломать». Люди вежливо заявляют, что решение не сработало, и предоставляют дополнительную информацию. Однако г-н Кресковяк считает приемлемым оскорбление РАБОЧЕГО решения. Он даже не удосужился описать какие-либо проблемы с моим РАБОЧИМ решением. Оскорбления отговаривают людей СОДЕРЖАТЬ. Можно правильно изложить разногласия. Мистер Кресковяк, вы ведете себя непрофессионально. Если вы прокомментируете дальше, я больше не буду отвечать на ваши грубые действия.