2016-03-21 27 views
1

Ben Windows Forms metin kutusu için bir GotFocus olay eklemek istedim, bu yüzden this söz anlatılan yöntemi kullanılır; çalışır, ancak uygulamanızı çalıştırdıktan sonra birkaç kez kod parçasını siler ve nedenini bilmiyorum. Bir geçici çözüm kullanıma olarak do not modify the contents of this method with the code editor.Neden GotFocus olayı Designer'dan kendisini silme tutar?

: Şüphesiz sen tasarımcı kod oluşturulur ve bu uyarı dikkat etmelidir temas etmemelidir neden başka kanıt

txtID.GotFocus += txtID_GotFocus; 
+0

Neden kodu yerine tasarımcı koymak mı? – Shaharyar

+0

Ben tasarımcı koydum, bu yüzden GotFocus olayı çok olur varsayınca doğrulama olayları mükemmel çalışır çünkü. Kodu kendisinin içine koyacağım ve sonuçları paylaşacağım, teşekkürler. – jmcc

+0

@jmcc kodu parçaya değil tasarımcıya koydu. –

cevap

2

olay işleyicileri eklediğinizde WinForms tasarımcı tarafından kullanılan kurallar kullanmayın çünkü kaybolur.

Eğer GotFocus veya Enter olayı kullansanız önemli değildir. (Senin Designer.cs olarak) el olay işleyicisi bu şekilde eklerseniz:

txtID.Enter += txtID_Enter; 

sonra herzaman tasarımcı sefere ortadan kalkacaktır tasarımcı yüzeyinde kontrolünü taşıyın.

txtID.GotFocus += new System.EventHandler(txtID_Focus); 
txtID.Enter += new System.EventHandler(txtID_Enter); 

ve tasarımcı kod olmasını bekler yolu olduğu hiçbir şey yok olur:

Bu şekilde olay işleyicileri eklemelidir.

+0

yazmamalısınız. Bunun nedenini söylediniz. –

2

:

Bu

kendisini silerek tutar koddur Bunun yerine Enter olayı (bu önerilir). Ayrıca, işleyiciyi formun Load olayına atayabilirsiniz. Eğer tasarımcı kuralları kullanmak yoktu çünkü

nedeni doğru nikita tarafından belirtilen
DÜZENLEME, bu kadar. Daha fazla bilgi için onun answer.

İlgili konular