上图是在反复不停对修改信息窗体后,调用下图方法后,偶尔会报错
反复(快速)不停修改不同记录,偶尔(较多情况下),会出错上面的错误提示,请问这个是哪里的原因呢?再有就是我用异步去调数据,如果是启用了调试跟踪,会提示控件不是由线程创建,无法调试?这个又怎么解决异步方法中,给控件绑定数据,调试呢
用法就不太对..., 对控件的访问应该是同步的.
async void button_click_handler(){
await bindBaseEmployList(); //比如说,点击一个按钮就load数据.
}
async Task bindBaseEmployList(){
doWaiting w=new...;
w.ShowMessage(); //sync show.
var ds = await getDataAsync(emp); //async load datas.
this.gridControll.DataSource = ds; //sync set to winform control.
}
十分感谢,终于没有错误提示了!第一次写异步,好多年没写程序了,还是自己内部要使用的一个应用,才重拾代码
从异常信息来看,可能是绘制行(DrawRow)事件中出现了问题,从上面代码来看,有可能是focusedRowHandle方法内部有问题,像这样的空异常,简单的可以通过判断是否为null输出到输出窗口进行诊断
if(obj==null)
{
Console.WriteLine(信息);
}