每次在相关文本框中显示变量“温度”和“umidita”时,此代码的最后一行应该在 datagridview 中填充一行 3 列。
这些数据来自串行端口,每 x 秒更新一次。
private void SetText(string text)
{
string temperatura;
string umidita;
if (this.txtOutput.InvokeRequired)
{
SetTextCallback d = new SetTextCallback(SetText);
this.BeginInvoke(d, new object[] { text });
}
else
{
string f = text;
char firstChar = f[0];
if (firstChar == 'T')
{
temperatura = f;
temperatura = f.Replace("T", "");
textBox1.Text = temperatura;
}
else if (firstChar == 'U')
{
umidita = f;
umidita = f.Replace("U", "");
textBox2.Text = umidita;
}
dataGridView1.Rows.Add(new string[] { DateTime.Now.ToString("HH:mm:ss"), textBox1.Text, textBox2.Text });
}
}
该代码正在运行,但我一次得到 3 行填充了相同的数据。
我不熟悉 datagridview,也不明白为什么会出现这种行为。我需要更改什么才能在时间中填写一排时间,“temperatura”和“umidita”?