vb.net多个自定义控件加载数据时导致程序无响应
vb.net多个自定义控件加载数据时导致程序无响应
本人是个编程新手,最近在开发一个小项目,碰到了一个无法解决的问题,望高手帮忙分析一下问题。
项目描述:使用.net winform开发一个订单查询显示程序,当有用户刷卡时,读取他的订单并显示每一条记录内容。为了界面美观,自定义了一个数据显示控件M,M仅是对一个panel、tabelLayoutpanel和三个label进行了封装,并定义了几个必要的属性,实现对label.Text的赋值和一些数据的判断。程序中该M控件用于对查询结果表中的一行记录进行显示。为了调用方便,程序中定义了一个控件数组,用于存放多个M控件。在显示查询结果时,使用循环对数组中的M进行赋值,如果数组中的M控件比查询结果多,隐藏多出的M控件,如果少了则添加新的M控件。界面中依次可以显示三个用户的订单,每个用户的订单记录最多不超过10条。
问题现象:现在的问题是,在程序刚开始运行时能正常工作,但是显示几条记录后,就会产生未响应,用try Catch也捕捉不到错误,调试也不报错,偶尔会在改变M.visible 属性那句上提示system.drawing.dll错误。后又在每次显示记录前将控件数组中已有的M控件销毁,再重新定义加载,但是问题依旧会出现。看程序界面,感觉每次出错都在显示M控件的过程中产生不响应问题。后面为了验证用label替换M控件,显示记录,也一样会出错,只不过是接受刷卡的时间会长点。也不知道是因为什么原因,高手给分析一下。
我用的是VS2008,VB.net 开发的程序。
for ...
... 你的代码
Application.DoEvents()
next