从数据源填充 Datagridview 中的 Combobox 列

Populating Combobox column in Datagridview from data source

关于 C# datagridview,我需要你的帮助。 我想从数据源生成一个 datagridview。 数据网格视图有 4 列。 第一列:名字 Column2:姓氏 Column3:性别 Column4:国家。 Country 列是一个组合框列。

我已经相应地创建了数据源并将数据源设置为网格。 前三列正在生成,但未添加组合框。 这是我的应用程序的示例代码

List<Mydataclass> dataclassList = new List<Mydataclass>();
for (int i = 0; i < 5; i++)
        {
            Mydataclass dataclass = new Mydataclass();
            dataclass.firstname = "firstname" + i;
            dataclass.secondname = "second name" + i;
            dataclass.gender = "gender" + i;
            dataclass.country = new string[] { "BD", "AUS"};

            dataclassList.Add(dataclass);

        }
BindingSource bindingSource1 = new BindingSource();

        bindingSource1.DataSource = dataclassList;
        dataGridView1.DataSource = bindingSource1;

当我 运行 应用程序时,数据网格显示有 3 列,但组合框列未生成。

请帮我找出问题。

提前致谢。

这对我有用:

// This is the list of items to be displayed in the DataGridView Combobox Column
string[] listOfItems = new string[]{"Apple", "Banana", "Orange"};

// Define a BindingSource and add the items to it (alas, there is no AddRange())
BindingSource bs = new BindingSource();

foreach (string item in listOfItems)
{
    bs.Add(item);
}

// Set binding (MyComboColumn is the name you gave to your combo column, see image below)
this.MyComboColumn.DataSource = bs;