如何在dataGridView中实现combobox的效果?
2个回答
展开全部
通过列名(字段名)判断,如果是"所属部门",就显示组合框控件,反之就隐藏组合框控件.
编写 DataGridView1_CellEnter 事件来控制显示与否:
下面,我给出的是返回当前选中的列标题(字段)名.你自己修改吧!
Private Sub DataGridView1_CellEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellEnter
MsgBox(DataGridView1.Columns(DataGridView1.CurrentCell.ColumnIndex).HeaderText)
End Sub
编写 DataGridView1_CellEnter 事件来控制显示与否:
下面,我给出的是返回当前选中的列标题(字段)名.你自己修改吧!
Private Sub DataGridView1_CellEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellEnter
MsgBox(DataGridView1.Columns(DataGridView1.CurrentCell.ColumnIndex).HeaderText)
End Sub
追问
谢谢。
那么就要得到鼠标的当前坐标值,然后在鼠标点击的位置显示combobox控件,选取combobox中的text后,还要把当前单元格的值设置为选取的值,怎么得到当前鼠标的坐标值和设置值呢?
追答
这个还真没有经验,你可以看看这个事件里有没有可以返回鼠标的值.
不过,我有个思路,你可以摸索一下:
因为这个实践里,可以返回当前的单元格的行,列序号,
列数:DataGridView1.CurrentCell.ColumnIndex
行数:DataGridView1.CurrentCell.RowIndex
那么,可以用循环累加计算当前单元格的位置,这样来定组合框的位置,你自己试一下.
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询