我有 DataGridViewComboBoxCell 和一个 DataTable。表中的数据我使用DataSource与DataGridViewComboBoxCell绑定,并设置ValueMember和DisplayMember。
private void Form1_Load(object sender, EventArgs e)
{
DataGridViewComboBoxCell comboBoxCell = new DataGridViewComboBoxCell();
dataGridView1.Rows[0].Cells[0] = comboBoxCell;
comboBoxCell.DataSource = dataTable;
comboBoxCell.ValueMember = "ID";
comboBoxCell.DisplayMember = "Item";
}
如何在表单加载时以编程方式设置单元格中的值?在简单的 ComboBox 中,我知道一个属性 SelectedIndex。我试过 comboBoxCell.Value = ...; 但它给出了一个例外。并尝试过
private void dataGridView1_CellFormatting(object sender,
DataGridViewCellFormattingEventArgs e)
{
e.Value = 1;
}
它在单元格中设置了一个新值,但我需要选择一个值。
表单已加载,我有空单元格。
以及 ComboBox 中的一些数据。
当我将此代码放在dataGridView1.Rows[0].Cells["ComboColumn"].Value = "1";
comboBoxCell.DisplayMember = ...(见上文)之后,它工作正常。
ID 列中的值“1”对应于 Items 列中的值“Second”。所以,我得到了正确的结果。
对不起我的英语和我的新手代码:)