winform窗体加载后,想要把一些控件的变动反映出来,应该怎么去刷新窗体或者控件呢。
点击按钮1,执行计时器动作 OnTimedEvent。 OnTimedEvent里省略了一部分代码,总之就是达到某个条件后执行cncmachine,cncmachine里会改变textbox的值。但是实际运行后却不变。希望大家能给我一些帮助!十分感谢!
private void button1_Click(object sender, EventArgs e)
{
// Create a timer with a ten second interval.
aTimer = new System.Timers.Timer(10000);
// Hook up the Elapsed event for the timer.
aTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent);
aTimer.Interval = 100;//100毫秒执行一次
aTimer.Enabled = true;
}
public static void OnTimedEvent(object source, ElapsedEventArgs e)
{
if ((c11 - c22) >= 0.3)
{
cncmachine();
aTimer.Stop();//计时器停止
}
}
public static void cncmachine()
{
Form4 form4 = new Form4();
ret = Focas1.cnc_allclibhndl3("192.168.1.1", duankou, 10, out Flibhndl);
Focas1.ODBAXIS odbaxis = new Focas1.ODBAXIS();
double[]mystring1 = new double[2];
for (short i = 0; i < 2; i++)
{
ret = Focas1.cnc_machine(Flibhndl, (short)(i + 1), 8, odbaxis);
matrixxz[i, bb1] = odbaxis.data[0] * Math.Pow(10, -3);
chucun = odbaxis.data[0] * Math.Pow(10, -3);
mystring1[i] = chucun;
}
AddNum2();
double form4t7 = mystring1[0];
double form4t12 = mystring1[1];
double form4t8 = form4t7 + ccc1;
form4.textBox13.Text= form4t8.ToString();
form4.textBox12.Text = form4t12.ToString();
form4.textBox11.Text = "X="+ form4t8.ToString() + "\n\r"+ "Z="+ form4t12.ToString();
// Application.DoEvents();
// Console.WriteLine(form4.textBox11.Text);
//Console.WriteLine(matrixxz.ToString());
}