我想將GotFocus事件添加到Windows窗體文本框中,因此我使用this問題中描述的方法;它可以工作,但是在我運行我的應用程序幾次之後,代碼片段會自行刪除,我不知道爲什麼。爲什麼GotFocus事件不斷從Designer中刪除自己?
這是一個不斷刪除自身代碼:
txtID.GotFocus += txtID_GotFocus;
我想將GotFocus事件添加到Windows窗體文本框中,因此我使用this問題中描述的方法;它可以工作,但是在我運行我的應用程序幾次之後,代碼片段會自行刪除,我不知道爲什麼。爲什麼GotFocus事件不斷從Designer中刪除自己?
這是一個不斷刪除自身代碼:
txtID.GotFocus += txtID_GotFocus;
它消失了,因爲您不使用WinForms設計器在添加事件處理程序時使用的約定。
無論您使用GotFocus
還是Enter
事件都無關緊要。如果你(在你的Designer.cs)手動添加事件處理程序是這樣的:
txtID.Enter += txtID_Enter;
那就總是從設計師的下一次消失你移動設計表面的控制。
您必須添加事件處理程序是這樣的:
txtID.GotFocus += new System.EventHandler(txtID_Focus);
txtID.Enter += new System.EventHandler(txtID_Enter);
,並沒有什麼會消失,因爲它的設計者希望這個代碼是這樣。
原因是您所說的。 –
爲什麼你把它放在設計器而不是你的代碼? – Shaharyar
由於驗證事件在我將它們放入設計器中時工作得很好,所以我假設了gotfocus事件也會發生。我將把它放在代碼本身並分享結果,謝謝。 – jmcc
@jmcc把這件作品放在代碼中,而不是設計師。 –