如果您的需要是「鎖定」設計時窗體的背景色,可能是最有效和最不容易出錯的解決方案是覆蓋BackColor
屬性並用屬性標記,然後從設計器中的窗體繼承。
你可以聲明:
public class FixedBackgroundForm : Form
{
protected new static readonly Color DefaultBackColor = Color.Black;
[Browsable(false),
DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
public override Color BackColor
{
get { return base.BackColor; }
set { base.BackColor = value; }
}
public FixedBackgroundForm()
{
this.BackColor = DefaultBackColor
}
}
這將同時是自動錶單背景色爲Black
,和防止在設計器中的背景顏色的變化。
當你添加新的形式到您的項目,從FixedBackgroundForm
繼承:
public partial class Form1 : FixedBackgroundForm
{
...
}
如果你需要「修復」,背景色爲黑色不管什麼,只需使用這條線的BackColor
二傳手:
set { base.BackColor = DefaultBackColor; }
請問爲什麼你不使用WPF? IMO比Winforms更加靈活和動態。使用WPF,您可以通過強制在「窗口」上限制依賴項屬性的值。 – Default
@Default沒有具體原因^^ –