zoukankan      html  css  js  c++  java
  • DataGridView多线程或者Task异步设置DataSource报错

    问题描述:前台根据后台的webapi传递过来的数据,然后设置DataSource,第一遍都是没问题的,但是发现只要刷新过快就立即报错;

    上代码,位于某个Button的Click事件中:

    BomList = await GetListAsync();
    m_DVBOMInfo.DataSource = BomList;//这里可能就会报错了

    遂网上搜索,看到一篇文章https://blog.csdn.net/cxwl3sxl/article/details/8807763

    当时就感觉像是DataSource设置的坑,后面用了上面链接博文的方案,解决了问题。

    解决代码,用这个函数替代:m_DVBOMInfo.DataSource = BomList;

            private void SetGridViewData(List<BOM> dataList)
            {
                this.BeginInvoke(new System.Action(() =>
                {
                    this.m_DVBOMInfo.Rows.Clear();
                    foreach (BOM data in dataList)
                    {
                        m_DVBOMInfo.Rows.Add(data.EQUIPMENTNAME, data.SUBPROJECTNAME, data.MAJORNAME, data.EQUIPMENTNUM, data.EQUIPMENTCODE, data.SINGLEWEIGHT, data.CUSTOMSPECIFICATIONMODEL);
                    }
                }));
            }
  • 相关阅读:
    discuz开发笔记
    响应式布局
    timedelta
    图片轮播
    性能
    事件捕获
    git
    css hacks
    AFNetworking 网络错误提示data转换字符串
    常见HTTP错误代码
  • 原文地址:https://www.cnblogs.com/LeeSki/p/14744745.html
Copyright © 2011-2022 走看看