【发布时间】:2014-09-20 20:30:59
【问题描述】:
为什么没有 Dispatcher.RunAsync 这段代码不能工作,它有什么作用?如果没有 Dispatcher,它在将值复制到 textv.Text 时会抛出错误“那是它在不同的线程上”
async void Current_GeofenceStateChanged(GeofenceMonitor sender, object args)
{
var reports = sender.ReadReports();
await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
{
foreach (var report in reports)
{
GeofenceState st = report.NewState;
Geofence gf2 = report.Geofence;
if (st == GeofenceState.Entered)
{
textv2.Text = "Hello"; //XAML TEXT
}
else if(st==GeofenceState.Exited)
{
textv2.Text = "Bye";
}
}
});
}
【问题讨论】:
标签: c#