C# 将组合框动态添加到flowlayoutpanel

C# 将组合框动态添加到flowlayoutpanel,c#,combobox,dynamic-programming,numericupdown,flowlayoutpanel,C#,Combobox,Dynamic Programming,Numericupdown,Flowlayoutpanel,我正在为学校做一个项目,但现在我被卡住了。 我想动态地将组合框添加到我的flowlayoutpanel中,这取决于数字的上下值 因此,如果数字上下值是2,那么2个组合框是动态生成的,但我真的不知道如何实现这一点,这就是我所想的 public partial class ...Form: Form { ComboBox[] cbChoices; private void nudGuests_ValueChanged(object sender, EventArgs e)

我正在为学校做一个项目,但现在我被卡住了。 我想动态地将组合框添加到我的flowlayoutpanel中,这取决于数字的上下值

因此,如果数字上下值是2,那么2个组合框是动态生成的,但我真的不知道如何实现这一点,这就是我所想的

public partial class ...Form: Form
{
    ComboBox[] cbChoices;

    private void nudGuests_ValueChanged(object sender, EventArgs e)
    {
        flowPanel.Controls.Clear();

        for (int i = 1; i < nudGuests.Value; i++)
        {
            cbChoices[i] = new ComboBox();
            flowPanel.Controls.Add(cbChoices[i]);
        }
    }
 }
公共部分类…表单:表单
{
组合框[]选项;
private void nudGuests_ValueChanged(对象发送方,事件参数e)
{
flowPanel.Controls.Clear();
for(int i=1;i

但我似乎无法让它工作。

这里有几个问题

首先,您的cbChoices数组没有初始化,所以`cbChoices=newcomboxnudguests.Value

其次,C使用0索引(从第0个元素而不是第1个元素开始计算数组),因此使用
for(int i=0…)

第三,你真的需要组合框的数组吗?或者你可以直接添加它们而不存储它们吗

这将为您指明正确的方向