Я знаю, что ComboBox.Height
не может быть легко задан. Может быть изменен с помощью Font
. Но мне нужно знать, что это конечная высота. Он не обновляется до появления окна и элементов управления.C# - Как получить фактическую высоту ComboBox
Как могу рассчитать? Когда я запускаю это кнопка не ниже, но за полем со списком:
// my forms must be disigned by code only (no designer is used)
public class Form1: Form
{
public Form1()
{
ComboBox box = new ComboBox();
box.Font = new Font("Comic Sans MS", 100, FontStyle.Regular);
Controls.Add(box);
Button button = new Button();
button.Text = "hello world";
button.SetBounds(box.Left, box.Bottom, 256, 32);
button.SetBounds(box.Left, box.Height, 256, 32); // doesn't work either
Controls.Add(button);
}
}
Он наследует от управления, так что не так с [ 'Height'] (http://msdn.microsoft. com/en-us/library/system.windows.forms.control.height.aspx) свойство? – Sayse
@Sayse Я предполагаю, что проблема с OPs - это всплывающий список ComboBox, охватывающий другие элементы управления в его форме. 'Height' вернет только высоту элемента управления TextBox. – Filburt
@Sayse Он не обновляется до тех пор, пока не появится окно, а «ComboBox» будет видимым. – Bitterblue