dポイントプレゼントキャンペーン実施中!

前提:
ASP.NET
Visual C#
DropDownListのリストに文字列を配列で読み込みたいのですが、エラー(無効な引数がいくつか含まれています。)が出てしまい私の頭では限界です。どうかご教授ください。
(例)
string[] Gengou = { "明治","大正", "昭和", "平成"};
DropDownList1.Items.AddRange(Gengou);

A 回答 (3件)

少し意図とは違うかもしれませんが、



//方法1
string[] Gengou = { "明治", "大正", "昭和", "平成" };
foreach (string gengouMember in Gengou)
{
DropDownList1.Items.Add(new ListItem(gengouMember));
}

//方法2
DropDownList1.Items.AddRange(new ListItem[]{new ListItem("明治")
,new ListItem("大正")
,new ListItem("昭和")
,new ListItem("平成")});

のような感じでしょうか。
    • good
    • 0
この回答へのお礼

ありがとうございます 参考になりました
foreach文とfor文の違いも教えていただけないでしょうか?

お礼日時:2006/09/01 13:22

#1です。


ざっくりですが、回数なり上限なり、ループの終了条件がある場合はfor、
全ての要素を処理の対象にする場合はforeachかな。
詳しくは、以下のリファレンスをご参照ください。

MSDN C# プログラマーズ リファレンス
(for) http://msdn2.microsoft.com/ja-jp/library/ch45axt …
(foreach、in) http://msdn2.microsoft.com/ja-jp/library/ttw7t8t …
    • good
    • 0

リファレンスをよく読みましょう。


DropDownListクラスのItemsプロパティはListItemCollectionクラスで、ListItemCollectionクラスのAddRangeメソッドの引数はListItemクラスの配列です。
質問者さんのソースを見ると、ListItemクラスの配列が要求されているところにstringクラスの配列を渡しているのでエラーになります。

解決方法は既に#1さんが回答されているとおりです。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!