大家好!就是我在winform窗口拖放了一个 DataGridView,在其Columns 属性中添加了DataGridViewComboBoxColumn列并在其Items中写了一些内容。
现在我想 当DataGridViewComboBoxColumn列的SelectedIndexChanged事件发生时就把该ComboBox里的内容存进数据库。
我在网上查到了以下一些资料:
[code=csharp] //1.在 DataGridview1_EditingControlShowing的事件中创建ComboBox_SelectedIndexChanged事件 private void DataGridview1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e) { ComboBox combo = e.Control as ComboBox; if (combo != null) { // Remove an existing event-handler, if present, to avoid // adding multiple handlers when the editing control is reused. combo.SelectedIndexChanged -= new EventHandler(ComboBox_SelectedIndexChanged); // Add the event handler. combo.SelectedIndexChanged += new EventHandler(ComboBox_SelectedIndexChanged); } //检查是否进入该事件 MessageBox.Show("Add SelectedIndexChangedEvent"); } //2.ComboBox_SelectedIndexChanged事件处理 private void ComboBox_SelectedIndexChanged(object sender, EventArgs e) { MessageBox.Show("OrderBy"); } [/code]
我现在遇到的问题是:
不管我怎么点击DataGridview1的任何地方包括DataGridViewComboBoxColumn 列的控件 都无法进入
DataGridview1_EditingControlShowing事件,所以也就无法添加ComboBox_SelectedIndexChanged事件。请问:DataGridViewComboBoxColumn 列该怎么添加SelectedIndexChanged事件? 感激不尽!
程序没问题,自己弄错了
你换个datagridview试试进不进这个事件呗