C# 更新屏幕/显示器上的数据信息
我希望我的应用程序在代码执行时更新屏幕信息。我尝试使用C# 更新屏幕/显示器上的数据信息,c#,silverlight,windows-phone-7,C#,Silverlight,Windows Phone 7,我希望我的应用程序在代码执行时更新屏幕信息。我尝试使用this.LayoutRoot.UpdateLayout()但它不起作用,我不明白为什么。有人能帮我吗? 应用程序从单击的按钮接收按钮的适当性,然后将其用于模型类中的一些内容,然后我希望它向用户显示一条消息。之后,我希望它继续执行更多的事情(AI) 您试图从UI线程执行一些处理,因此无法更新接口 使用后台工作程序执行长时间运行的任务,并在需要更新UI时使用dispatcher: var worker = new BackgroundWorke
this.LayoutRoot.UpdateLayout()代码>但它不起作用,我不明白为什么。有人能帮我吗?
应用程序从单击的按钮接收按钮的适当性,然后将其用于模型类中的一些内容,然后我希望它向用户显示一条消息。之后,我希望它继续执行更多的事情(AI)
您试图从UI线程执行一些处理,因此无法更新接口
使用后台工作程序执行长时间运行的任务,并在需要更新UI时使用dispatcher:
var worker = new BackgroundWorker();
worker.DoWork += (s, e) =>
{
Thread.Sleep(1500); // Some processing
Dispatcher.BeginInvoke(() => txMsg.Text = "Hello"); // Update the UI
Thread.Sleep(1500); // More processing
};
worker.RunWorkerAsync();
很抱歉,它没有工作,应用程序在结束执行所有代码时继续显示消息,而不是在请求执行时继续显示消息show@DianaRodrigues你能用后台工作人员显示你的代码吗?一定是你做错了什么。
var worker = new BackgroundWorker();
worker.DoWork += (s, e) =>
{
Thread.Sleep(1500); // Some processing
Dispatcher.BeginInvoke(() => txMsg.Text = "Hello"); // Update the UI
Thread.Sleep(1500); // More processing
};
worker.RunWorkerAsync();