public partial class frmMain : Form
{
......
private void frmMain_Load(object sender, EventArgs e)
{
this.dgvImport.DataSource = SHOWPROCESSEDFILE2;
if (dgvImport.Rows.Count > 0)
{
selectedGridRow = dgvImport.Rows[0];
}
}
private void getGridList()
{
try
{
RefreshGrid();
}
catch (Exception ex)
{
}
}
}
private void axGoButton_ClickEvent(object sender, EventArgs e)
{
thgrv = new Thread(getGridList);
thgrv.IsBackground = true;
thgrv.Start();
}
private void RefreshGrid()
{
SHOWPROCESSEDFILE2.Rows.Clear();
//这里会报错 为什么呢?
foreach (ProcessedFiles.PROCESSEDFILERow r in resultPROCESSEDFILERows)
{
......
SHOWPROCESSEDFILE2.Rows.Add(pRow);
}
}
}求高手解答我的困惑
resultPROCESSEDFILERows
这个就是一个dataTable
就是开辟线程的时候,SHOWPROCESSEDFILE2.Rows.Clear();把这个清空就会报错,如果在主线程里面,没错