<分区>
我有 DataGridView
,其中包含两个 ComboBox
列。
第二个 ComboBox
将根据从第一个 ComboBox
中选择的值填充数据。
如何处理第一个 ComboBox
的 SelectedIndexChanged
事件。
<分区>
我有 DataGridView
,其中包含两个 ComboBox
列。
第二个 ComboBox
将根据从第一个 ComboBox
中选择的值填充数据。
如何处理第一个 ComboBox
的 SelectedIndexChanged
事件。
最佳答案
如果我使用 EditingControlShowing
事件,那么 cb_SelectedIndexChanged
会触发多次,即使用户选择了组合框但没有更改选择。
这对我有用:
private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex == comboboxColumn.Index && e.RowIndex >= 0) //check if combobox column
{
object selectedValue = dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value;
}
}
//changes must be committed as soon as the user changes the drop down box
private void dataGridView1_CurrentCellDirtyStateChanged(object sender, EventArgs e)
{
if (dataGridView1.IsCurrentCellDirty)
{
dataGridView1.CommitEdit(DataGridViewDataErrorContexts.Commit);
}
}
关于c# - 如何处理 ComboBox 的 SelectedIndexChanged 事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11950189/