Можно ли установить высоту меньше 21 пикселя для System.Windows.Forms.Combobox-Control - PullRequest
1 голос
/ 12 февраля 2010

Hello Community ,

У меня проблема с высотой System.Windows.Forms.Combobox-Control. Я не могу это изменить. Я хочу использовать это для написания собственной реализации (пользовательский элемент управления, нарисованный владельцем).

Следующий код не работает для меня (это только попробовать). Высота по-прежнему 21px!

public class TestBox : ComboBox
{
    public TestBox()
    {
        DropDownHeight = 15;
    }

    protected override Size DefaultSize
    {
        get
        {
            return new Size(15,15);
        }
    }

    protected override void SetBoundsCore(int x, int y, int width, int height, BoundsSpecified specified)
    {
        base.SetBoundsCore(x, y, 15, 15, specified);
    }
}

Пожалуйста, помогите мне.

Regars, Marco

1 Ответ

4 голосов
/ 12 февраля 2010

Высота ComboBox должна быть изменена на основе шрифта , назначенного это.

Итак, измените шрифт комбо. см. другое обсуждение на эту тему .

Свойство ComboBox MinimumSize кодируется так:

public override Size MinimumSize
{
    get
    {
        return base.MinimumSize;
    }
    set
    {
        // can see that Height is not taken in consideration - is 0
        base.MinimumSize = new Size(value.Width, 0); 
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...