Я хочу установить только цвет фона области панели, но он каким-то образом также устанавливает цвет фона своих элементов управления, что с ним не так?Панель BackColor устанавливает цвет ее элементов управления
public Form1()
{
InitializeComponent();
Panel p = new Panel();
p.Size = this.ClientSize;
p.BackColor = Color.Black; // The button will also have black background color
Button b = new Button();
b.Size = new Size(this.ClientSize.Width, 50);
p.Controls.Add(b);
this.Controls.Add(p);
}
Ничего неправильно, это дизайн. Некоторые свойства - это то, что называется свойствами ['ambient'] (https://msdn.microsoft.com/de-de/library/system.windows.forms.ambientproperties%28v=vs.110%29.aspx) и наследуются от родителя элемента управления, то есть от контейнера, в котором он сидит. Просто установите цвет на все, что хотите, и он будет придерживаться. Шрифт - это еще один. Очень удобно, когда вы об этом думаете, не так ли? – TaW