首先使用具有正确名称的设计器创建 DataGridViewComboBoxColumn。然后说你有一个字符串列表和其他字符串值绑定到那个datagridview然后使用这个代码:下面的代码将一个列表绑定到两个DataGridViewTextBoxCell和一个DataGridViewComboBoxCell。注意 AllCriterias 是一个包含两个字符串值和一个字符串列表的列表。DGVEligibilityCriteria 是网格名称。
for (int i = 0; i < AllCriterias.Count; i++)
{
DataGridViewTextBoxCell Cmb1 = (DataGridViewTextBoxCell)DGVEligibilityCriteria.Rows[i].Cells[0];
Cmb1.Value = AllCriterias[i].Name;
DataGridViewTextBoxCell Cmb2 = (DataGridViewTextBoxCell)DGVEligibilityCriteria.Rows[i].Cells[1];
Cmb2.Value = AllCriterias[i].Type;
DataGridViewComboBoxCell Cmb = (DataGridViewComboBoxCell)DGVEligibilityCriteria.Rows[i].Cells[2];
foreach (var filtervalue in AllCriterias[i].FilterValues)
{
Cmb.Items.Add(filtervalue);
}
}
需要通过设置 selectindex 属性默认显示第一个索引。使用此代码:这里的“filterValues”是您在 datagridview 设计器中创建的 DataGridViewComboBoxCell 的名称。
foreach (DataGridViewRow row in DGVEligibilityCriteria.Rows)
{
row.Cells["filterValues"].Value = (row.Cells["filterValues"] as DataGridViewComboBoxCell).Items[0];
}