ComboBox的Padding属性在哪里?

时间:2017-08-08 00:40:05

标签: vb.net winforms combobox

Label和CheckBox有一个" Padding"属性。 如果我想在TableLayoutPanel中设置它们的位置,这非常方便。 现在我想用ComboBox做同样的事情,但令我惊讶的是我在ComboBox中找不到Padding属性。

真的不存在吗? 如果没有,是否有解决方法在TableLayoutPanel中设置组合框缩进的缩进?

1 个答案:

答案 0 :(得分:2)

由于ComboBox派生自Control,它确实存在。它有财产。见https://msdn.microsoft.com/en-us/library/system.windows.forms.control.padding(v=vs.110).aspx

但开发者故意将其隐藏起来用于ComboBoxes。这是ComboBox.Padding的签名

ComboBox [来自元数据]

//
// Summary:
//     This property is not relevant for this class.
//
// Returns:
//     A System.Windows.Forms.Padding value.
[Browsable(false)]
[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
[EditorBrowsable(EditorBrowsableState.Never)]
public Padding Padding { get; set; }

显然,This property is not relevant for this class.

不是说你不能尝试在运行时从代码中修改它......

this.comboBox1.Padding = new Padding(10); // this compiles!

......但这似乎没有做任何事情。

TableLayoutPanel本身有填充。也许这对你有用