Thread ile 10 veya 300 sn aralığında datagridview dolduruyorum. Bu işlemi yapınca datagridview aşağıdaki gibi bir hal alıyor. Bu hataya düşmesinin sebebi ne olabilir ve nasıl engelleyebilirim ?
17
●1.815

public DataTable GetDataTable(string sqlcumle)
{
SqlConnection baglanti = this.baglan();
SqlDataAdapter adp = new SqlDataAdapter(sqlcumle, baglanti);
DataTable dt = new DataTable();
try
{
adp.Fill(dt);
}
catch (SqlException ex)
{
throw new Exception(ex.Message + " (" + sqlcumle + ") ");
}
adp.Dispose();
baglanti.Close();
baglanti.Dispose();
return dt;
}
private void timer1_Tick(object sender, EventArgs e)
{
Thread thread1 = new Thread(new ThreadStart(yeni));
CheckForIllegalCrossThreadCalls = false;
thread1.Start();
}
public void yeni()
{
dtgecici = GetDataTable("select * from Tablo");
datagrdMac.DataSource = dtgecici;
}DataSource olarak göstermeden önce datable üzerinde bir kaç işlem yapsamda (karşılaştırma vb. gibi) kod genel olarak bu şekilde.
private void ResetExceptionState(Control control)
{
typeof(Control).InvokeMember("SetState", BindingFlags.NonPublic |
BindingFlags.InvokeMethod | BindingFlags.Instance, null,
control, new object[] { 0x400000, false });
}