停止在打开组合框列表时显示建议自动完成列表

本文关键字:列表 显示 组合 | 更新日期: 2023-09-27 18:35:11

我有一个带有一些组合框列的数据网格。我希望用户键入建议或从列表中进行选择。

它现在可以正常工作,但是如果您打开列表,然后开始键入并按 Enter,则不会触发我用于行检查的任何事件。

当有组合框的建议列表时,如何禁用建议列表?

停止在打开组合框列表时显示建议自动完成列表

您需要包含

autocomplete="off"

即:

<input type="text" id="myInputBox" name="myInputBox" autocomplete="off" value="initialValue"/> 

因此,基本上您需要更新网格代码以创建包含此属性的输入。您需要覆盖一些方法。'我会尝试发布 msdn 链接。

终于找到了一个解决方案:

private void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
    {
        ComboBox c = e.Control as ComboBox;
        if (c != null)
        {
            c.DropDownStyle = ComboBoxStyle.DropDown;
            c.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
            c.MaxDropDownItems = 100;
            c.KeyPress += new KeyPressEventHandler(c_KeyPress);


        }
    }
void c_KeyPress(object sender, KeyPressEventArgs e)
    {
        (sender as ComboBox).DroppedDown = false;
    }