古詩詞大全網 - 四字成語 - C#關於定時器和多線程中對控件的操作以及界面假死的現象。

C#關於定時器和多線程中對控件的操作以及界面假死的現象。

不清楚具體原因,不過妳這裏面定時器沒什麽意義,直接用循環就行了,類似於下面的,timer2什麽的代碼可以刪掉了,直接在formload的時候啟動下面的線程

new?Thread((ThreadStart)(delegate

{

while(true)

{

this.Invoke((MethodInvoker)delegate

{?

rtxtTestResults.Text?=?"正在導入中";

rtxtTestResults.SelectAll();

rtxtTestResults.SelectionColor?=?Color.Green;

//?timer2.Enabled?=?true;//這裏為什麽又來壹次?

OleDbConnection?myConn?=?new?OleDbConnection(strCon);

string?strCom?=?"?SELECT?*?FROM?["?+?name?+?"$]?where?測試日期?=?#"+date+"#";

myConn.Open();

OleDbDataAdapter?myCommand?=?new?OleDbDataAdapter(strCom,?myConn);

ds?=?new?DataSet();

myCommand.Fill(ds);

myConn.Close();

dataGridView1.DataSource?=?ds.Tables[0];

});

Thread.Sleep(700);

}

}))

.Start();