DevExpress Kontrolleri SetEnabled Sorunu

DevExpress kontrollerini kullanırken eğer server tarafında yazdığınız kodda Enabled property’sini kullandıysanız. Örneğin

ASPxTextBox1.Enabled=true;

gibi, Client Side Eventler ‘de kontrolün enablad özelliğini değiştirmek istediğiniz de (SetEnabled fonksiyonu ile)  beklediğinizden farklı ve hatalı sonuçlarla karşılaşırsınız. Buna engel olmak için eğer bir kontrolün enabled özelliğini client side’da değiştireceksek ve server side’da da bu özelliğe müdahale etmemiz gerekiyorsa Enabled yerine ClientEnabled property’sini kullanmalıyız.

ASP.NET Control Bug

Son zamanlar da hep karşılaştığım sorunlardan bahsediyorum ama bu kez bahsedeceğim sorunun kaynağı ben değilim 🙂 Microsoft’ta kabul etmiş bug olduğunu. 

Asp.Net kontrolleri ile çalışırken, bir ASP.Net kontrolünden kendi kontrolümü türettim ve daha sonra sayfama eklemeye çalıştığımda

The type name “X” does not exist in the type “X”

tarzında bir hata alıyordum. Yanlış gözüken hiçbir şey yoktu ama hata veriyordu. Daha sonra – google sağolsun – aynı sorunla karşılaşan ve bunu bildiren birinin daha olduğunu öğrendim. Sorunun nedeni ise bir bug’mış. Namespace ile sınıf ismi aynı olduğu zaman veriyormuş bu hatayı, tam da benim yaptığım şey. Microsoft’tan gelen cevapta ise bunun bug olduğunu kabul etmişler ama ASP.NET 4’te bunu düzeltmeyeceklerini bildirmişler. Nedeni ise sorunun basit bir çözümü olmasıymış. Fazlasına burdan ulaşabilirsiniz.