给DataGridViewComboBoxColumn添加下拉选择事件

在DataGridView中,当我们选择DataGridViewComboBoxColumn时,触发事件。需要EditingControlShowing事件里面写。如下:

        ////// 显示用于编辑单元格的控件时发生。
        /////////private void DataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
        {
            ComboBox cbo = new ComboBox();
            if (dataGridView1.CurrentCell.OwningColumn.Name == "DataType" && dataGridView1.CurrentCell.RowIndex != -1)
            {
                cbo = e.Control as ComboBox; //保存当前的事件源。为了触发事件后。在取消
                cbo.SelectedValueChanged += new EventHandler(cbo_SelectedValueChanged);
            }
        }

        ////// DataGridView中的ComboBox选中事件
        /////////void cbo_SelectedValueChanged(object sender, EventArgs e)
        {
            ComboBox combox = sender as ComboBox;

            switch(combox.SelectedValue.ToString())
            {
                default:break;
            }

            //做完处理,须撤销动态事件。
            combox.SelectedIndexChanged -= new EventHandler(cbo_SelectedValueChanged);
        }

给DataGridView绑定EditingControlShowing事件即可,代码如下:

dataGridView1.EditingControlShowing += DataGridView1_EditingControlShowing;
—— 完 ——
相关推荐
评论

立 为 非 似

中 谁 昨 此

宵 风 夜 星

。 露 , 辰

文章点击榜

细 无 轻 自

如 边 似 在

愁 丝 梦 飞

。 雨 , 花