【发布时间】:2012-11-25 21:41:20
【问题描述】:
我有一个 datagridview 有多个列,我想在两列上实现自动完成。这些列是 datagridviewtextboxcolumn 和 datagridviewcomboboxcolumns。我在想自动完成可以在 datagridview 的 editcontrolshowing 事件中完成(我的代码中有),但我似乎无法弄清楚它是如何工作的。
private void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
{
if (dataGridView1.CurrentCell.ColumnIndex == 0 && e.Control is ComboBox)
{
ComboBox comboBox = e.Control as ComboBox;
comboBox.AutoCompleteMode = AutoCompleteMode.Suggest;
comboBox.AutoCompleteSource = AutoCompleteSource.ListItems;
comboBox.TextChanged += LastColumnComboSelectionChanged;
}
if (dataGridView1.CurrentCell.ColumnIndex == 2 && e.Control is TextBox)
{
if (e.Control.Enabled)
{
TextBox POCText = e.Control as TextBox;
POCText.MouseDoubleClick += new MouseEventHandler(POCText_MouseDoubleClick);
}
}
}
【问题讨论】:
标签: c# winforms datagridview