2011-01-24 7 views
12

ListItemCollectionをListItem []に変換しようとしています。ListItemCollectionをListItem []に変換する方法は?

私のコードではこれがあります。

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のコレクションは、それを配列または別の種類のコレクションとして扱いますか?私はコレクションと配列についてちょっと混乱しています。新鮮なアイデアを見つけることを願っています、事前に感謝します。

答えて

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

ありがとうBonshington。 –

+0

ライフセーバー!ありがとう! – HerrimanCoder

+2

これには、次のものが必要です。 'System.Linq;を使用しています。 – NickG

1

あなたが頻繁にあなたがそうのような拡張機能を作成することができ、これを使用する予定の場合:

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

は、次に、あなたは自分のコード内で rank.ToArray();を呼び出す必要があります。

関連する問題