Скрыть кнопку со стрелкой в ​​ComboBox в C #, VS2008 - PullRequest
5 голосов
/ 05 января 2012

Мне нужно скрыть кнопку со стрелкой ComboBox.

Я хочу, чтобы DropDownStyle свойство было равно ComboBoxStyle.DropDownList без видимой стрелки вниз. Могу ли я это сделать?

Можно ли использовать какой-либо другой элемент управления для отображения раскрывающегося списка изображений?

Спасибо за вашу помощь.

Ответы [ 5 ]

2 голосов
/ 05 января 2012

Вы можете попробовать и подделать это. Накройте его Textbox и в событии Textbox's GotFocus () просто установите comboBox.Focus()

0 голосов
/ 15 мая 2019

Для WinForms вам может понравиться этот класс на основе кнопки, которая открывает ваши элементы в контекстном меню, а затем принимает текст выбранного элемента для текста кнопки:

public class DropList : Button
{
    public event EventHandler TextChangedByUser;
    private ContextMenu _CM = new ContextMenu();
    private string[] _Items;

    public string[] Items
    {
        get { return _Items; }
        set
        {
            _Items = value;
            _CM.MenuItems.Clear();
            foreach (string sChoice in _Items)
            {
                MenuItem MI = _CM.MenuItems.Add(sChoice, MI_Click);
            }
        }
    }

    private void MI_Click(object sender, EventArgs e)
    {
        if (this.Text != (sender as MenuItem).Text)
        {
            this.Text = (sender as MenuItem).Text;
            if (TextChangedByUser != null) TextChangedByUser.Invoke(this, new EventArgs());
        }
    }

    protected override void OnClick(EventArgs e)
    {
        base.OnClick(e);
        _CM.Show(this, new System.Drawing.Point(0, this.Height - 1));
    }
}
0 голосов
/ 11 июля 2014

Попробуйте установить DropDownStyle = Simple и Height для отображения только одной строки (около 24 пикселей).

0 голосов
/ 05 января 2012

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

Для WPF: Всплывающее управление на MSDN .

Для Winform: Простое всплывающее окно на CodeProject.com

0 голосов
/ 05 января 2012

для этого вы можете создать расширенный элемент управления или переопределить событие рисования в выпадающем списке в вашей форме

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...