gpt4 book ai didi

c# - DataGridViewComboBoxColumn - 必须单击单元格两次才能显示组合框

转载 作者:太空狗 更新时间:2023-10-29 20:13:10 27 4
gpt4 key购买 nike

我正在使用 DataGridView,它是使用设计器创建的,其中包含几列,包括 DataGridViewComboBoxColumn 列。

有点烦人的是我必须点击每个单元格两次甚至三次才能显示下拉列表:

  1. 如果我点击文本部分,需要点击 3 次!

enter image description here enter image description here enter image description here

  1. 如果我点击向下箭头,只需点击两次:

enter image description here enter image description here

我假设这是由于单元格使用第一次点击获得焦点,但有没有办法解决这个问题,所以点击一个单元格会立即显示组合框?我注意到使用 DataGridViewCheckBoxColumn 不会 会发生同样的问题...无论该单元格是否具有焦点,单击复选框都会立即切换它。

最佳答案

你可以简单地设置EditModeDataGridView 的属性设置为 EditOnEnter

它使编辑更容易。几乎是单击一次,但如果您希望在单击组合框的内容时立即显示 ComboBoxColumn 的下拉列表,您可以处理 CellClick事件然后使用 EditingControl你的网格并将其转换到DataGridViewComboBoxEditingControl并使其显示下拉列表。

private void categoryDataGridView_CellClick(object sender, DataGridViewCellEventArgs e)
{
//You can check for e.ColumnIndex to limit this to your specific column
var editingControl = this.categoryDataGridView.EditingControl as
DataGridViewComboBoxEditingControl;
if (editingControl != null)
editingControl.DroppedDown = true;
}

使用此技巧时要小心,当用户只想在单元格之间导航而不进行编辑时,您可能会使下拉菜单变得烦人。

关于c# - DataGridViewComboBoxColumn - 必须单击单元格两次才能显示组合框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32947475/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com