电光石火33 2021-09-18 09:46 采纳率: 33.3%
浏览 21

winform中datagridview有一列DataGridViewComboBoxColumn,如何选中某一项才触发dataGridView1_EditingControlShowing事件

datagridview中有一列是下拉框DataGridViewComboBoxColumn,如何选中下拉框中的某一项才触发dataGridView1_EditingControlShowing事件,而不是一点击下拉框就触发。

  private void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
        {
            DataGridView dgv1 = (DataGridView)sender;
            if (dgv1.CurrentCell.GetType().Name == "DataGridViewComboBoxCell" && dgv1.CurrentCell.RowIndex != -1)
            {
                //给这个DataGridViewComboBoxCell加上下拉事件
                (e.Control as ComboBox).SelectedIndexChanged += new EventHandler(dgvComboBox1_SelectedIndexChanged);
            }
        }

private void dgvComboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {

            ComboBox combox = sender as ComboBox;

            //这里比较重要
            combox.Leave += new EventHandler(dgvComboBox1_Leave);
            try
            {
                //在这里就可以做值是否改变判断
                if (combox.SelectedItem != null && combox.SelectedItem.ToString() != "")
                {
                    string selectItem = combox.SelectedItem.ToString();
                }

            }
            catch (Exception ex)
            {
                MessageBox.Show(this, "错误:" + ex.Message, "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

        }

        private void dgvComboBox1_Leave(object sender, EventArgs e)
        {
            ComboBox combox = sender as ComboBox;
            combox.SelectedIndexChanged -= new EventHandler(dgvComboBox1_SelectedIndexChanged);
        }

  • 写回答

1条回答 默认 最新

  • 於黾 2021-09-18 10:00
    关注

    你不是已经添加了selectedchanged事件了,为什么还需要edit事件
    你直接在单元格里事件里判断,如果是combo列就return

    评论

报告相同问题?

问题事件

  • 创建了问题 9月18日

悬赏问题

  • ¥15 python怎么在已有视频文件后添加新帧
  • ¥20 虚幻UE引擎如何让多个同一个蓝图的NPC执行一样的动画,
  • ¥15 fluent里模拟降膜反应的UDF编写
  • ¥15 MYSQL 多表拼接link
  • ¥15 关于某款2.13寸墨水屏的问题
  • ¥15 obsidian的中文层级自动编号
  • ¥15 同一个网口一个电脑连接有网,另一个电脑连接没网
  • ¥15 神经网络模型一直不能上GPU
  • ¥15 pyqt怎么把滑块和输入框相互绑定,求解决!
  • ¥20 wpf datagrid单元闪烁效果失灵