winform ComboBox自动完成缓存

时间:2013-07-02 19:40:23

标签: c#-4.0 caching autocomplete combobox

我有一个绑定到DataTable的组合框。在combox中进行选择后,我更新数据源(即过滤DataTable)并将其重新绑定到combox。

除自动完成功能外,一切正常。

例如, 假设数据源的值为 12345,12346,12347 。现在我输入123,因此自动完成显示所有3个值。我从列表中选择了一个。然后,下面的代码更新数据源并重新加载组合框。

cmbType.DataSource = dtRequestTypes.Select("Some_Condition").CopyToDataTable();
cmbType.DisplayMember = "TypeOfReq";
cmbType.ValueMember = "TypeOfReq";
cmbType.Text = "";

假设新数据源的值为 abcde,abcef,abceg 。现在,如果我只是按下向下箭头(不按任何其他按钮),“123”显示为选定的文本,当我持续按下时,它会循环前3个值( 12345,12346,12347 )箭头。如果我单击下拉箭头,它会显示新值,从现在开始,自动完成功能正常。

我相信旧值存储在某个地方的缓存中。无论如何要刷新它。我使用 .Refresh() .SelectedText =“” .Text =“”。什么都行不通。

感谢任何帮助。

0 个答案:

没有答案