excel = Workbook.Open("1.xls");
sheeticerik = excel.Worksheets[0];
for (int k = 0; k < sutun; k++)
for (int i = 0; i < satir; i++)
{
string a = sheeticerik.Cells[i, k].StringValue;
if (a.Contains("X"))
{
dataGridView1.Rows[x1].Cells[y1].Style.BackColor = System.Drawing.Color.Red;
System.Threading.Thread.Sleep(1000);
dataGridView1.Refresh();
}
}
我想每秒打印颜色到datagridview。我写了这段代码。但它不起作用。因为程序loop.countX1000秒等待并立即打印颜色。不是连续打印。我该怎么办?
解决方案[编辑]:
- 将计时器控件添加到您的表单。(它在组件类别中)
- 将其 Interval 属性设置为 45000(该值表示毫秒)
- 在表单设计器中或在代码中的某处将计时器的 Enabled 属性设置为 True。
- 为定时器的 Tick 事件添加一个处理程序(你可以通过双击定时器来获得)
- 在 Tick 处理程序中,更新您的 dataGridView
private void timer1_Tick(object sender, EventArgs e)
{
// Update DataGridView
}
并使用,timer1.Start();...