奇怪的问题的DataGridViewComboBoxCell,试图改变自动提交
-
25-09-2019 - |
题
所以我的目标是在一次从下拉列表中的项目的用户点击,电池会自动调用EndEdit中()。最奇怪的是,以下将工作的代码在2-N ComboBoxesCells我下拉列表,选择从值却从第一个。有什么事,我在这里失踪??
protected override void OnCellClick(DataGridViewCellEventArgs e)
{
base.OnCellClick(e);
DataGridViewComboBoxEditingControl control = this.EditingControl as DataGridViewComboBoxEditingControl;
if (control != null)
{
control.DropDownClosed += new EventHandler(control_DropDownClosed);
}
}
void control_DropDownClosed(object sender, EventArgs e)
{
this.EndEdit();
DataGridViewComboBoxEditingControl control = sender as DataGridViewComboBoxEditingControl;
control.DropDownClosed -= new EventHandler(control_DropDownClosed);
}
应该在这里,我从DataGridView继承添加如果这不是明显
解决方案
在类似“最奇怪的是,以下将工作的代码在2-N ComboBoxesCells我下拉列表,选择从值却从第一个的”发生,这往往是因为事件发生,你需要做的东西了。
Seing你的榜样,我要说的是,在第一时间,当你点击,
DataGridViewComboBoxEditingControl control = this.EditingControl as DataGridViewComboBoxEditingControl;
给你control == null
。
也许你应该改变选择了做从Click
你的东西来SelectedIndexChanged
或SelectedValueChanged
事件?
希望这有助于,
不隶属于 StackOverflow