我正在嘗試創建基類以更改現有表單的用戶界面。 我剛開始開發類,並有下面的代碼:如何使用基類設置Control和WinForm樣式?
public class UI_1:Form
{
public UI_1()
{
FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
Font = new System.Drawing.Font("Segoe UI", 21.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
BackColor = System.Drawing.SystemColors.HotTrack;
}
}
public partial class Form_LoginNew : UI_1
{
public Form_LoginNew()
{
}
}
我將這個基類繼承來我現有的形式(Form_LoginNew)如上圖所示。在測試時,「FormBorderStyle」被設置/更新...但「BackColor」&「字體」不會改變。爲什麼它不工作?
此外,請讓我知道如何使用此基類來更改(button,labels ..等)的控件樣式。請記住,表單和控件已經存在。另外,我不能和WPF一起去。
屬性在InitializeComponent中被初始化爲它們的值,大多數情況下,如果它們被設計者觸動了。它們位於表單的.designer.cs文件中。所以你在這裏做的是設置默認值,在InitializeComponent中被覆蓋,因爲這是在構造函數之後調用的。 – Robinson 2015-03-19 12:13:06
當我嘗試時工作得很好。無論你做錯什麼,都不能從代碼片段中看到。我的水晶球竊聽了關於缺少的InitializeComponent()調用的一些信息,但那不可能。 – 2015-03-19 12:54:12
@Robinson:你是對的。如果我設置/替換.designer.cs文件中的'BackColor'屬性....它工作。但是,如何使用上面的基類實現這一點?這個項目有很多種形式,我想用我將以現有形式繼承的基類來實現。謝謝:) – 911Rapid 2015-03-19 13:49:44