C# 用List

C# 用List,c#,winforms,combobox,C#,Winforms,Combobox,组合框索引更改后,必须用列表值填充另一个组合框。我怎样才能做到这一点 例如: 这是我现在的方式,但不正确: private void cbSelectEditFunction_SelectedIndexChanged(object sender, EventArgs e) { cbSelectEditName.Items.Add(emp.FindEmployeeinFunction(cbSelectEditFunction.Text)); } 类方法: public List&

组合框索引更改后,必须用列表值填充另一个组合框。我怎样才能做到这一点

例如:

这是我现在的方式,但不正确:

private void cbSelectEditFunction_SelectedIndexChanged(object sender, EventArgs e)
{
    cbSelectEditName.Items.Add(emp.FindEmployeeinFunction(cbSelectEditFunction.Text));    
}
类方法:

public List<string> FindEmployeeinFunction(string aFunction)
{
    List<string> EmployeeListFunction = new List<string>();

    foreach (Employee TempEmployee in EmployeeList)
    {
        if(TempEmployee.Function == aFunction)
        {
            EmployeeListFunction.Add(TempEmployee.Username);
        }
    }
    return EmployeeListFunction;
}
希望这样可以理解。如果我忘了什么,请告诉我

我认为AddRange是您正在寻找的方法

//Assuming you don't want to continually add new items use Clear()
cbSelectEditName.Items.Clear();

//Use AddRange to add the list.  ToArray() is used to convert List<> to string[]
cbSelectEditName.Items.AddRange(emp.FindEmployeeinFunction(cbSelectEditFunction.Text).ToArray()); 
我认为AddRange是您正在寻找的方法

//Assuming you don't want to continually add new items use Clear()
cbSelectEditName.Items.Clear();

//Use AddRange to add the list.  ToArray() is used to convert List<> to string[]
cbSelectEditName.Items.AddRange(emp.FindEmployeeinFunction(cbSelectEditFunction.Text).ToArray()); 

items.add方法是否可能只能添加一个?这意味着您的list方法必须被调用到一个变量中,然后该变量循环通过,以便单独添加每个选项。@AlfieGoodacre我刚刚制作了一个本地列表,将所有项目放在其中。然后使用Foreach将项目添加到组合框中。我想应该有更好的选择。那一个让我想,呵呵;感谢你的想法!谢谢items.add方法是否可能只能添加一个?这意味着您的list方法必须被调用到一个变量中,然后该变量循环通过,以便单独添加每个选项。@AlfieGoodacre我刚刚制作了一个本地列表,将所有项目放在其中。然后使用Foreach将项目添加到组合框中。我想应该有更好的选择。那一个让我想,呵呵;感谢你的想法!谢谢我还不可能真正使用AddRange。AddRange需要对象[],我没有对象[]。我有一张单子。为了达到我目前的状态,我有什么需要改变的吗?啊,是的。我已经修改了我的示例,使其包含.ToArray,它将把它转换为字符串[],字符串[]是一个对象[],因此它确实可以工作!你帮了我大忙!谢谢你,伙计我还不可能真正使用AddRange。AddRange需要对象[],我没有对象[]。我有一张单子。为了达到我目前的状态,我有什么需要改变的吗?啊,是的。我已经修改了我的示例,使其包含.ToArray,它将把它转换为字符串[],字符串[]是一个对象[],因此它确实可以工作!你帮了我大忙!谢谢你,伙计