我有一個名爲'CustomForm'的窗體,我使用這個窗體是爲了讓所有窗體都具有一致的設計。所有的子窗體都從它繼承,就像'class childForm:CustomForm'一樣。我刪除了自定義窗體上的窗口邊框,並創建了自己的窗體邊框,因此我爲窗口標題添加了標籤。我創建了一個修改該標籤文本的受保護屬性。設計師失敗,因爲父窗體「沒有名爲...的屬性」
出於某種原因,當我嘗試打開一個孩子的設計師組成,它說:
類型「Quiz.CustomForm」沒有名爲「WINDOWTITLE」屬性。
我希望能夠通過設計器在表單屬性的「其他」部分編輯此屬性。這工作之前,我不知道我已經做了什麼來打擾它。如果我進入設計器文件,並進入InitalizeComponent,它說'this.WindowTitle =「這裏的字符串」'。並且沒有錯誤,因爲我在父表單中爲它創建了一個受保護的屬性。 IDE沒有強調,但是當我嘗試加載設計器時,卻收到了上述錯誤。
在CustomForm類的屬性看起來像:
protected string WindowTitle
{
get { return lbl_windowTitle.Text; }
set { lbl_windowTitle.Text = value; }
}
我試圖使財產公開,但它並沒有區別。
@IvanStoev OP聲稱他們在最後一句中沒有區別 – rene
@rene雖然我很確定非公共屬性不會顯示在屬性網格中,所以無法通過設計器編輯它* 。所以,無論OP的聲明如何,這個問題肯定是由於財產不是「公共」而造成的。 –