我想我的組合框列出我所有的數組列表項目。這是我迄今爲止,但我不知道我可以添加到使其顯示每個數組列表項到組合框。 有沒有一種方法可以編寫Items.Display或其他東西?c#combobox顯示arraylist項目
public void eh()
{
snip
}
我想我的組合框列出我所有的數組列表項目。這是我迄今爲止,但我不知道我可以添加到使其顯示每個數組列表項到組合框。 有沒有一種方法可以編寫Items.Display或其他東西?c#combobox顯示arraylist項目
public void eh()
{
snip
}
public void PopulateActors()
{
cboActor.Items.Clear();
cboActor.Items.AddRange(ActorArrayList.Cast<string>());
}
你需要在一個循環中創建ComboBoxItems和一個將它們添加一個:
ComboboxItem item = new ComboboxItem();
item.Text = "Item text1";
item.Value = 12;
cboActor.Items.Add(item);
希望這有助於:)
foreach (string line in ActorArrayList)
{
cboActor.Items.Add(line);
}
您可以使用DataSource
綁定在ArrayList
到您的組合框:
yourComboBox.DataSource = yourArrayList;
使用DisplayMember
和ValueMember
選擇顯示什麼,什麼是評價項目的Value
:
yourComboBox.DisplayMember = "Displayed thing";
youtComboBox.ValueMember = "Evaluated thing";
如果不指定DisplayMember
,該ToString()
將被稱爲在每個項目上獲得顯示的字符串。在你的情況下,它看起來像你有一個字符串ArrayList
,所以你不需要爲DisplayMember
和ValueMember
指定任何值。
注意:您應該使用List<T>
相反,它會更好。 ArrayList
只是一箇舊東西。
您必須添加一個ListItem(文字,值)
foreach (Actor line in ActorArrayList)
{
cboActor.Items.Add(new ListItem(line.Name ,line.ID)); //as second part you may enter the ID of the object so you can use it at a later time
}
}
您可以創建這樣
ArrayList sampleArray = new ArrayList();
sampleArray.Add("India");
sampleArray.Add("China");
sampleArray.Add("USA");
sampleArray.Add("UK");
sampleArray.Add("Japan");
一個數組列表,然後可以將其添加到您的組合框
cboActor.Items.Clear();
cboActor.Items.AddRange(sampleArray);
上面沒有提到的另一個例子!類似希德男,因爲這並沒有爲我工作,我分享我發現我的解決方案:
String[] data = new String[]{"Data1", "Data2", "Data3", "Data4"};
cboData.Items.AddRange(data);
有你'cboActor.Items.Add(線)審判;'? –
cbActor必須擁有一個名爲DataSource的屬性,只需指定cboActor.DataSource = ActorArrayList並查看wat的情況。 –
您是否可以像WinForms或WPF一樣提供更多信息/ tagson框架? – meilke