C#winform中怎么实现一部分控件是实时刷新并要保证整个界面不随之闪动。(就像网页中的ajax技术) 10
3个回答
展开全部
实时更新就是了,比网页简单多了
独立个线程出去,然后循环绑定控件数据就可以了
独立个线程出去,然后循环绑定控件数据就可以了
更多追问追答
追问
请问能不能具体点,怎么实现多线程在同一个界面显示呢?
追答
Thread t;
private void Form1_Load(object sender, EventArgs e)
{
t = new Thread(new ThreadStart(Test));
t.Start();
}
Private void Test()
{
while(true)
{
//比如复制textbox1
SetText("aaa");
}
}
子线程修改控件需要用委托,不然直接修改值会报错,代码见下
delegate void SetTextCallback(string text);
private void SetText(string text)
{
if (this.textBox1.InvokeRequired)
{
SetTextCallback d = new SetTextCallback(SetText);
this.Invoke(d, new object[] { text });
}
else
{
this.textBox1.Text = text;
}
}
SetText 自己可以添加个Control参数
实现多种控件,你先理解了这个代码就应该没问题了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询