2016-03-31 17 views
0

buSınıf öğesini parametre olarak nasıl geçirebilirim? Başka bir sınıfa sınıf varlık geçmesi gerekiyor

public void AutoComplet(TextEdit text_searche, Class entity here) 
{ 
    AutoCompleteStringCollection collection = new AutoCompleteStringCollection(); 

    ArrayList fo = new ArrayList(); 

    fo = t.pms_product_ALLSelectlabo(); 

    foreach (Class entity here pr in fo) 
    { 
     collection.Add(pr.blabla); 
    } 

    text_searche.AutoCompleteSource = AutoCompleteSource.CustomSource; 
    text_searche.AutoCompleteMode = AutoCompleteMode.SuggestAppend; 
    text_searche.AutoCompleteCustomSource = collection; 
} 

ve yapmam gereken ilk sınıfında ikinci sınıfta bir yöntem olduğunu

optionDb.AutoComplet(searche, Class entity here); 

Bunu nasıl yapabilirim?

public void AutoComplet<T>(TextEdit text_searche) 
{ 
    AutoCompleteStringCollection collection = new AutoCompleteStringCollection(); 

    ArrayList fo = new ArrayList(); 

    fo = t.pms_product_ALLSelectlabo(); 

    foreach (T pr in fo.OfType<T>()) 
    { 
     collection.Add(pr.blabla); 
    } 

    text_searche.AutoCompleteSource = AutoCompleteSource.CustomSource; 
    text_searche.AutoCompleteMode = AutoCompleteMode.SuggestAppend; 
    text_searche.AutoCompleteCustomSource = collection; 
} 

ve jenerik parametresini sağlayarak diyoruz:

optionDb.AutoComplet<Class entity here>(searche); 

Ben de olur

+0

_type_'in nasıl geçeceğini mi soruyorsunuz? Pms_product_ALLSelectlabo' ne döndürüyor? Tek tip bir koleksiyon değil mi? –

cevap

0

basit oldu sen türü hakkında götürüyorsanız işlevini generic yapmaktır Arkaik ArrayList yerine güçlü yazılan koleksiyonları kullanmanızı öneririz.

+0

Mantıksal olarak doğru ama güdümlü clollection.add (pr.bllala) bllabal veritabanında bir dosyalanmış olduğundan, şimdi tam olarak nasıl bir alan olabilir –

+0

Burada T: BaseTypeWithBlaBla'yı – RoadieRich

+0

+1 belirtmeyi unutma ama ben fitst yöntem belirteci içinde typeblalalal gerekir, bu yüzden daha sonra tüm sınıf varlık için bir mehtod yazmam gerekiyor –

İlgili konular