网站首页 博客 DataGridView在多线程中出现大红叉
项目中做了一个多线程实现 DataGridView 动态刷新数据,但是在动态刷新数据N次之后,DataGridView 突然变成一个大红叉。
处理的方法,重新封装 DataGridView 控件,重写 OnPaint 方法,代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace XuexiIefeel
{
public class DataGridViewIefeel : DataGridView
{
protected override void OnPaint(PaintEventArgs e)
{
try
{
base.OnPaint(e);
}
catch
{
Invalidate();
}
}
}
}然后在项目中所有用到 DataGridView 的地方都替换成 DataGridViewIefeel,问题解决。