gpt4 book ai didi

c# - 让 AutoComplete 在 DataGridViewComboBoxColumn 中工作的方法?

转载 作者:太空宇宙 更新时间:2023-11-03 20:39:42 32 4
gpt4 key购买 nike

我已经成功地在常规组合框中使用了自动完成功能。如果用户键入不在列表中的内容,我使用离开事件将选择设置为空。

现在,我想在 DataGridViewComboBoxColumn 中执行此操作。但是,缺少 AutoCompleteMode 和 AutoCompleteSource 等常用属性。我听说有一种方法可以使用强制转换来完成此操作,但我无法很好地阅读 VB 语言说明。理想情况下,我想创建一个新的派生类,这样我就可以轻松地反复使用它。

另一个问题是我需要知道要拦截什么事件,以便将组合框重置为它的旧值,或者如果项目不在列表中则为 null。

帮助将不胜感激!谢谢。

最佳答案

您可以通过实现网格的EditingControlShowing 事件来获得此功能。本质上,当您编辑组合框列时,编辑控件是一个组合框因此,通过强制转换,您可以设置自动完成的属性

void grdPerformanceScenario_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
{
if (e.Control is ComboBox)
{
(e.Control as ComboBox).AutoCompleteMode = AutoCompleteMode.Suggest;
(e.Control as ComboBox).AutoCompleteSource = AutoCompleteSource.ListItems;
}
}

关于c# - 让 AutoComplete 在 DataGridViewComboBoxColumn 中工作的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3588294/

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