出於某種原因由Windows窗體設計器生成的任何代碼寫入到我Form.vb類,而不是給它所屬的Form.designer.vb類。我希望你能幫我弄清楚是什麼原因造成的。Visual Studio中編寫代碼到Form1.vb的,而不是form1.designer.vb
我刪除的代碼量可能,並能重現該問題有以下設置:
Namespace MyNamespace
public class Form
Inherits System.Windows.Forms.Form
End Namespace
這實際上是所有在我的形式留下的代碼 - 沒有方法/函數/成員。當我刪除名稱空間聲明時,再次在Form1.designer.vb文件中生成代碼。
爲什麼命名空間與Visual Studio的功能造成干擾?
我剛剛創建了一個新的項目從無到有,以確保我沒有任何依賴關係或設置干擾。我可以通過向自動生成的Form1類添加「Inherits System.Windows.Forms.Form」和任意名稱空間聲明來重現此行爲。 – 2014-12-03 10:58:38
另一句話:當我生成一個新的類(而不是形式),並從System.Windows.Forms.Form中繼承手動發生同樣的問題。在這種情況下,不會生成designer.vb類,並且所有屬於該類的代碼都將寫入我的mainclass。在這種情況下,我甚至不需要命名空間來獲得這種行爲。這讓我認爲儘管Visual Studio在兩種情況下都無法找到對designer.vb的適當引用。 – 2014-12-03 11:27:21
當您這樣做時,設計師會回到傳統的VS2002/3行爲。當部分類尚未得到支持時返回。類聲明中丟失的* Partial *關鍵字是它的提示。 – 2014-12-03 12:51:24