BackColor переопределяется при каждом запуске
делаю свою программу на winforms. разумеется, перерисовывал интерфейс, formborderstyle = none, все вытекающие в виде form1_mousedown с winapi для ее перемещения (возможно, дело именно в этом). у моей программы всего несколько цветов, они все темного оттенка, возьмем к примеру один backcolor - fromargb(52, 54, 53) - близко к черному. если запускать программу, то изначально у абсолютно любого контрола (кроме тех, что enabled = false) его классический светлый backcolor. я пробовал задавать backcolor на нужный и в form1(), и в form1_load, и там и там одновременно, однако это не помогает вообще. выглядит это как мерцание, потому как цвет со светлого резко меняется в черный, соответственно не обращать на это внимание нереально. странно, но цвет как бы не наследуется от формы (хотя если добавить новый контрол, его backcolor будет таким же, как и форма). используемое winapi (для перемещения формы, а так же для ее сворачивания (создан свой minimizebox)):
public const int WM_NCLBUTTONDOWN = 0xA1;
public const int HTCAPTION = 0x2;
[DllImport("user32.dll")]
private static extern bool ShowWindow(IntPtr hWnd, int nCmdShow);
[DllImport("user32.dll")]
private static extern IntPtr GetActiveWindow();
private const int SW_MINIMIZE = 6;
[DllImport("user32.dll")]
public static extern bool ReleaseCapture();
[DllImport("user32.dll")]
public static extern int SendMessage(IntPtr hWnd, int Msg, int wParam, int lParam);