我最近注意到Visual Studio設計器(我猜這就是所謂的)已經刪除了一些我的方法句柄。有沒有辦法阻止設計師這樣做?設計師似乎正在刪除designer.cs中的句柄
我的意思是這樣的一個例子: 我有一個當我的MainForm關閉時調用MainForm_Closing的方法 - 基本上是「你想保存更改嗎?」提示。埋在我的Main.designed.cs中是行:
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.MainForm_Closing);
在與我的MainForm對象有關的部分內。
但是,如果我對MainForm進行任何視覺更改(將控件拖動到它上面,編輯標籤名稱,更改圖像屬性等),似乎創建設計器的Visual Studio部分會清除我的自定義碼。
我猜測設計器被調用來在編譯時創建designer.cs(這樣它可以很容易地編譯爲IL),因此當然會刪除我的自定義句柄。
順便說一句:我正在生成我的自定義句柄正在智能感知的幫助下創建。例如,我鍵入:
this.FormClosing +=
並且智能感知提示正確的句柄並且顯示「按Tab鍵插入」)。
任何幫助理解這一點(並停止從刪除我的手柄Visual Studio)將不勝感激。
您添加代碼designer.cs? –
您是從屬性窗格中添加EventHandler還是直接在* .designer.cs文件中添加EventHandler?類似的問題回答得很好。 http://stackoverflow.com/questions/3786512/changing-autogenerated-code-in-a-c-sharp-windows-forms-application-project – Lloyd
只有像FomrClosing和TreeView.MouseClick等方法的句柄。我認爲我應該在其他地方添加此代碼? –