现在的位置: 首页 > 综合 > 正文

winform datagridview combobox 下拉框 事件

2013年08月07日 ⁄ 综合 ⁄ 共 1512字 ⁄ 字号 评论关闭

DataGridView下拉框动态赋值以及事件处理

第一种:

下拉框动态赋值:

 private void Form1_Load(object sender, EventArgs e)
        {
            //获取数据源list
            this.Column1.DataSource = list;
            this.Column1.DisplayMember = "";
            this.Column1.ValueMember = "";
        }

private DataGridViewComboBoxEditingControl dataGridViewComboBox = null;

//捕获事件

private void dgvTableFields_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
        {
            if (e.Control is DataGridViewComboBoxEditingControl && this.dgvTableFields.CurrentCell.ColumnIndex ==4
                                                                && this.dgvTableFields.CurrentCell.RowIndex !=-1)
            {                
                this.dataGridViewComboBox = (DataGridViewComboBoxEditingControl)e.Control;
              //增加委托处理

                dataGridViewComboBox.SelectionChangeCommitted += new EventHandler(this.dataGridViewComboBox_SelectionChangeCommitted);

            }
        }
        private void dataGridViewComboBox_SelectionChangeCommitted(object sender, EventArgs e)
        {

           //处理业务
            MessageBox.Show(((ComboBox)sender).Text);
        }

        private void dgvTableFields_CellEndEdit(object sender, DataGridViewCellEventArgs e)
        {
            if (this.dataGridViewComboBox != null)
            {
                dataGridViewComboBox.SelectionChangeCommitted -= new EventHandler(this.dataGridViewComboBox_SelectionChangeCommitted);
                this.dataGridViewComboBox =null;
            }
        }

 

抱歉!评论已关闭.