2011-01-24 13 views
12

ListItemCollection'ı bir ListItem [] haline dönüştürmeye çalışıyorum.ListItemCollection bir ListItem [] içine nasıl dönüştürülür?

Kodumda sahip olduğum şeyler.

ListItemCollection rank = new 
ListItemCollection(); 

rank.Add(new ListItem("First", "1"); 
rank.Add(new ListItem("Second", "2"); 

ListItem[] rankArray = new 
ListItem[4]; 

rankArray = (ListItem[])rank; 

C# .NET içindeki bir koleksiyon onu bir dizi veya başka bir koleksiyon türü olarak değerlendiriyor mu? Koleksiyonda ve dizimde biraz kafam karıştı. Yeni fikirler bulmayı umuyoruz, şimdiden teşekkürler.

cevap

43
var result = rank.Cast<ListItem>().ToArray(); 
+0

Çok teşekkürler Bonshington. –

+0

Hayat koruyucu! Teşekkürler! – HerrimanCoder

+2

Bu ihtiyaçlar: 'using System.Linq;' – NickG

1

sık bunu gibi bir uzantısı oluşturabilir bu kullanmayı planlıyorsanız:

public static ListItem[] ToArray(this ListItemCollection collection) 
{ 
    return collection.Cast<ListItem>().ToArray(); 
} 

Sonra sadece kodunuzda rank.ToArray(); aramanız gerekmektedir.

İlgili konular