Label和CheckBox有一个" Padding"属性。 如果我想在TableLayoutPanel中设置它们的位置,这非常方便。 现在我想用ComboBox做同样的事情,但令我惊讶的是我在ComboBox中找不到Padding属性。
真的不存在吗? 如果没有,是否有解决方法在TableLayoutPanel中设置组合框缩进的缩进?
答案 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本身有填充。也许这对你有用