我使用Visual C#Express編寫Windows Form應用程序,並稱我爲老學校,但我不喜歡設計師。這是一個麻煩,並污染我的項目與大量不需要的文件,以及不必要的猴子生成的源代碼。在Visual Studio中禁用設計器?
請告訴我,有一種方法可以徹底關閉它。
我使用Visual C#Express編寫Windows Form應用程序,並稱我爲老學校,但我不喜歡設計師。這是一個麻煩,並污染我的項目與大量不需要的文件,以及不必要的猴子生成的源代碼。在Visual Studio中禁用設計器?
請告訴我,有一種方法可以徹底關閉它。
只需不添加「新窗體」,添加到項目新類,並從Form類繼承他。
右鍵單擊項目文件並選擇打開並允許您設置打開文件類型的默認值。
好的,謝謝,這是一個很大的幫助。我沒有意識到我可以設置文件的默認開啓者。每次右鍵單擊並選擇「查看代碼」是一個小小的麻煩。 – 2009-02-19 23:08:57
這只是向我展示瞭如何擺脫Visual Studio 2012中的SQL Design視圖,並將其重新設置爲僅使用T-SQL編輯器打開它。謝謝,理查德從過去! – 2013-02-18 22:13:34
這是對的,但要小心。如果你偶然打開設計師,那麼它可能會弄亂你的手寫代碼。 – 2016-10-02 05:44:57
如果你不想使用設計師,那麼不要使用它?
您可以從頭開始創建一個新的形式,沒有設計者通過創建一個新的空類生成的任何代碼,並讓從System.Windows.Forms.Form
那麼類繼承,VS.NET仍然可能會顯示您的類一個表單,如果你願意,你仍然可以在設計器中打開它。 (並放下它的控制)。
問題是每次打開特定文件類型時默認打開的問題。 – Cephron 2014-02-11 22:00:45
在UI類之前添加一個[System.ComponentModel.DesignerCategory("")]
屬性以避免雙擊時激活設計器。
請注意,包含文件頂部的System.ComponentModel
然後僅添加屬性[DesignerCategory("")]
將不起作用(至少在Visual Studio 2010/2013中不會)。您必須使用完整的,符合命名空間限定的屬性類型名稱。
Frederik, 當然你是對的,但不是一個事實。 (這是I.J想知道的) 只要從任何Component繼承,工作室就會嘗試在設計編輯器中打開它。這是Visual Studio的默認行爲。
如果您在解決方案資源管理器中雙擊一個文件,則會打開一個設計器。 因此,如果你總是從類組件繼承而來的這些奇怪的設計器,但是不包含任何可見的東西,那真的很煩人。
真的幫了我,唯一的辦法就是設置該屬性:[System.ComponentModel.DesignerCategory(「」)]
我不知道這=)很爽暗示!
我只是遇到了部分MainForm類的問題。然後大叫「重複屬性」 ......
在這裏所做的任何人知道的解決方案,以避免在某些局部類文件以在雙擊打開設計師(編譯上沒有重複的屬性錯誤?)
我想我發現了一個小錯誤,在VS2005中... 通過在部分窗體類上設置DesignerCategory-Attribute,保存解決方案資源管理器顯示一個圖標,標識文件爲ac#文件(無窗體) 。
然後我在該屬性之前放置了一個註釋(//) - 並且它始終在代碼視圖中打開該文件。在關閉並重新打開之後,它也作爲一個非設計形式部件存儲在內部。 即使重新打開完整的解決方案。
所以我認爲這是在解決方案或項目文件中的任何信息......
...我發現這個在.csproj的文件: ...
<Compile Include="GUI\VFormMain_Test.cs">
</Compile>
<Compile Include="GUI\VFormMain_Theme.cs">
</Compile>
<Compile Include="Core\VTTEnv.cs" />
<Compile Include="GUI\VFormMain.cs">
<SubType>form</SubType>
</Compile>
...
工作室不時更新 - 然後它再次更新表單文件(doh)...好吧..但可能有一種解決方法來避免這種情況。
喀嚓... 最後編輯... 發現了一些:
http://social.msdn.microsoft.com/Forums/en-US/csharpide/thread/64c77755-b0c1-4447-8ac9-b5a63a681b78
(名字,你想不設計者開入了.Designer.cs文件)
(是的,你必須命名一些東西來切換它的LOL) 似乎工作。
其實,你在VS2010做的就是右鍵點擊cs文件,你不希望在設計器中打開,選擇「打開方式...」選項,然後進行編輯CSHARP默認。請注意,表單視圖是您更改前的默認值。
我覺得這個答案改變了我的生活。我現在可以用通常編寫Java的相同方式編寫C++/CLI表單應用程序,而無需使用C#。我從來沒有想過在沒有設計師的情況下使用C++/CLI,但它功能非常強大。 – Dmitry 2016-04-23 11:36:09