C#winform组合框
我在C#Winform上有一个组合框,我想用这个列表中的字符串名变量填充它,而不是其他。这是列表代码C#winform组合框,c#,winforms,combobox,C#,Winforms,Combobox,我在C#Winform上有一个组合框,我想用这个列表中的字符串名变量填充它,而不是其他。这是列表代码 class Animals { public string averageMass { get; set; } public string lifeSpan { get; set; } public string whereToFind { get; set; } public string name { get; set; } public string
class Animals
{
public string averageMass { get; set; }
public string lifeSpan { get; set; }
public string whereToFind { get; set; }
public string name { get; set; }
public string animalImage { get; set; }
}
class Mammals:Animals
{
public static List<Mammals> MammalList = new List<Mammals>();
public string hairColour { get; set; }
}
类动物
{
公共字符串averageMass{get;set;}
公共字符串寿命{get;set;}
找到{get;set;}的公共字符串
公共字符串名称{get;set;}
公共字符串animalage{get;set;}
}
哺乳类:动物
{
public static List=new List();
公共字符串hairColour{get;set;}
}
您可以根据SelectedIndexChanged
事件处理程序中的ListBox1
中的选择,设置ListBox2
的DataSource
,如下所示:
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if(listBox1.SelectedIndex==0)//Which is Mammals list
{
listBox2.DataSource = reptileList;
}
else//Which is Reptiles list
{
listBox2.DataSource = mammalList;
}
}
您可以在Combobox上执行此操作:
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if (comboBox1.SelectedItem == "Mammals") //You can also do index e.g. comboBox1.SelectedIndex == 0
{
comboBox2.DataSource = mammalList;
}
else
{
comboBox2.DataSource = reptileList;
}
}
或者您也可以这样做:
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
comboBox2.DataSource = fncGetSpecies(comboBox1.SelectedIndex);
}
private string[] fncGetSpecies(int intIndex)
{
//This will return if selected item is 0 which is Mammals or 1 if the selected item is Reptiles.
return intIndex == 0 ? mammalList : reptileList;
}
您可以使用以下代码向combobox添加字符串项
combobox.Items.Add(stringItem);
Google“级联dropdownlists winform”,在表示层中有业务逻辑,将其移动到业务逻辑层,并使用绑定控件或通过SelectedValue更改事件设置控件数据源来绑定组合框。答案非常模糊。@gplumb这是一个向组合框添加数据的通用问题。你还有什么建议吗?