C#当comboBox自动匹配时 鼠标点击窗体出现 InvalidArgument='0' 不是 'index' 的有效值. 参数名称: index 40
代码:privatevoidcomBoxModelCus_TextUpdate(objectsender,EventArgse){List<string>listNew=...
代码:
private void comBoxModelCus_TextUpdate(object sender, EventArgs e)
{
List<string> listNew = new List<string>();
listNew.Clear();
comBoxModelCus.Items.Clear();
string MODEL = comBoxModelCus.Text.Trim().ToUpper();
foreach (string item in g_initialQuery)
{
if (item.Contains(MODEL))
{
listNew.Add(item);
}
}
comBoxModelCus.SelectionStart = comBoxModelCus.Text.Length;
comBoxModelCus.Items.AddRange(listNew.ToArray());
Cursor = Cursors.Default;
comBoxModelCus.DroppedDown = true;
}
此时故意胡乱输入进行匹配不让其匹配到结果,然后点击窗体空白处就会出现异常!
正常输入匹配的话是可以的,但是不知为何这种情况之下点击空白处就会报此异常,而且也不提示是具体在哪出现此异常,不知哪位打算帮忙提供解决方案、、、(同样自己写了一个测试程式也是一样的结果。 展开
private void comBoxModelCus_TextUpdate(object sender, EventArgs e)
{
List<string> listNew = new List<string>();
listNew.Clear();
comBoxModelCus.Items.Clear();
string MODEL = comBoxModelCus.Text.Trim().ToUpper();
foreach (string item in g_initialQuery)
{
if (item.Contains(MODEL))
{
listNew.Add(item);
}
}
comBoxModelCus.SelectionStart = comBoxModelCus.Text.Length;
comBoxModelCus.Items.AddRange(listNew.ToArray());
Cursor = Cursors.Default;
comBoxModelCus.DroppedDown = true;
}
此时故意胡乱输入进行匹配不让其匹配到结果,然后点击窗体空白处就会出现异常!
正常输入匹配的话是可以的,但是不知为何这种情况之下点击空白处就会报此异常,而且也不提示是具体在哪出现此异常,不知哪位打算帮忙提供解决方案、、、(同样自己写了一个测试程式也是一样的结果。 展开
3个回答
展开全部
是不是在comBoxModelCus的光标移开事件里加了,类似comBoxModelCus.SelectIndex=0的代码,如果有的话,加个Check条件,判断如果有项目的情况下,再设置SelectIndex。
追问
没有哦,只有textUpdate事件,而且我写了一个小程式测试还是一样的结果,你可以自己测试一下,只给一个button1与comboBox1,button1初始化g_initialQuery集合,给comboBox添加同样的事件,会有一样的异常···
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询