【发布时间】:2015-05-20 03:00:20
【问题描述】:
我有一个包含 DataGridViewTextBoxColumn 和 DataGridViewComboBoxColumn 的 dataGridView。 组合框绑定到数据源,但文本框没有。
我希望当 TextBox 发生变化时,comboBox 的 selectedValue 设置为 textBox 文本。
当我将此代码放在 dataGridView 的 cellLeave 处理程序中时,comboBox 的 selectedValue 不会改变!这是因为此处理程序在更改 textBox 的值之前启动。
((DataGridViewComboBoxCell)DgvA.Rows[DgvA.SelectedRows[0].Index].Cells[1]).Value = DgvA.Rows[DgvA.SelectedRows[0].Index].Cells[0].Value;
有人知道怎么做吗?
【问题讨论】:
-
为什么在
CellValueChanged时使用CellLeave事件?它会在你想要的时候触发......当单元格的值发生变化时。 -
谢谢@Anthony.i 追踪了你所说的,但 CellValueChanged 没有启动!
-
请注意,在编辑完单元格的值之前,单元格的值不会改变,这可以通过离开单元格来表示。如果您在用户编辑单元格值时需要文本值,则需要挂钩到列的
DataGridViewTextBoxEditingControl,在 the answer below 中提到。
标签: c# winforms datagridview combobox windows-forms-designer