关于调用自己写控件库后,导致主窗体出现索引超范围,或者值无效等等的问题,以下是解决方法

错误如下图,该错误在代码中并不会报红。大家可以看看能否解决。

 

 

自定义窗体控件,在调用的时候会有一个预读的过程,这个时候如果我们定义下拉菜单,如下:
comboBox1.Items.Clear();
comboBox1.Items.Add("123");
for (int i = 0; i < 5; i++)
{
comboBox1.Items.Add("345");
}

comboBox1.Text = comboBox1.Items[0].ToString();
拉出来的控件就会显示123,而不会显示345。
一但comboBox1.Items.Add("123");这句去除掉,程序不会报红,而
使用了该控件的窗体就会出错,同时该控件也无法使用。而程序运行却能正常运行,
因为预读的时候并不进入for循环;

该错误就比如下面的代码,Console.WriteLine(str1);,会报str1上下文不存在一样,不过这个会报红。
for (int i = 0; i < 5; i++)
{
string str1 = "22";
}
Console.WriteLine(str1);

 

posted @ 2020-10-22 20:36  飘落的雨滴  阅读(259)  评论(1编辑  收藏  举报