Sefer Algan'ın Günlüğü

Günlüğüme hoşgeldiniz...

Tür dönüşüm kontrolünü daha rahat yapabiliriz ?

Bir çok uygulamada özellikle de uygulamalarin sunum (presentation) katmaninda asagidakine benzer kod parçalari görüyorum.

for(int i = 0; i < this.Controls.Count; i++)
{
    
try
    
{
         
TextBox btn = this.Controls[i];
    
}
    
catch
    
{
    
}
}

Yani bir tür dönüsümünün geçerli olup olmadigi try-catch bloklari ile çözülmeye çalisiyor. Evet, bu yöntem istenilen sonuca ulastirir ama try-catch blogu çokta amaci dogrultusunda kullanilmamistir. Hepiniz biliyorsunuki try-catch bloklari sadece istisnai durumlari düzenlemek için kullanilmalidir. Ama bir button nesnesini textbox nesnesine atamak çok ta istisnai bir durum degildir. Bu tür durumlar için C#'taki as operatörü biçilmis kaftandir. Bakiniz, yukaridaki kod asagidaki sekilde yazilirsa daha güzel ve daha okunabilir olacaktir.

for(int i = 0; i < this.Controls.Count; i++)
{
     TextBox btn = this.Controls[i]  as TextBox;

     
if(btn != null)
    
{
           //isleme devam          
     }
 
}

Yalniz unutmamak gerekir ki, as operatörü sadece referans türleri ile birlikte kullanilabilir.

Leave a Comment

(required) 

(required) 

(optional)

(required)