use*_*353 20 .net datagridview
我的WinForms应用程序中有一个DataGridView和一个DataGridViewComboBoxColumn.我需要手动下拉(打开)这个DataGridViewComboBoxColumn,比如单击一个按钮后.
我需要这个的原因是我已将SelectionMode设置为FullRowSelect,我需要单击2-3次才能打开组合框.我想点击组合框,它应该立即下拉.我想用CellClick事件做这个,或者还有其他方法吗?
我在Google和VS帮助中搜索,但我还没有找到任何信息.
有人可以帮忙吗?
thi*_*mat 23
我知道这不是理想的解决方案,但它确实创建了一个在单元格内工作的单击组合框.
Private Sub cell_Click(ByVal sender As System.Object, ByVal e As DataGridViewCellEventArgs) Handles DataGridView1.CellClick
DataGridView1.BeginEdit(True)
If DataGridView1.Rows(e.RowIndex).Cells(ddl.Name).Selected = True Then
DirectCast(DataGridView1.EditingControl, DataGridViewComboBoxEditingControl).DroppedDown = True
End If
End Sub
Run Code Online (Sandbox Code Playgroud)
其中"ddl"是我在gridview中添加的组合框.
use*_*353 16
谢谢ThisMat,您的解决方案完美无缺.
我在C#中的代码:
private void dataGridViewWeighings_CellClick(object sender, DataGridViewCellEventArgs e) {
if (e.RowIndex < 0) {
return; // Header
}
if (e.ColumnIndex != 5) {
return; // Filter out other columns
}
dataGridViewWeighings.BeginEdit(true);
ComboBox comboBox = (ComboBox)dataGridViewWeighings.EditingControl;
comboBox.DroppedDown = true;
}
Run Code Online (Sandbox Code Playgroud)
Per*_*ion 11
通过设置,我已经能够接近你想要的东西了
DataGridView1.EditMode = DataGridViewEditMode.EditOnEnter
Run Code Online (Sandbox Code Playgroud)
只要没有显示其他单元格的下拉列表,它就应该立即显示所选单元格的下拉列表.
如果出现任何问题,我会继续思考和更新.
归档时间: |
|
查看次数: |
17696 次 |
最近记录: |