期刊代理 - 等待约会的搜索同步

时间:2013-05-30 10:24:59

标签: windows-phone

我正在表演

appts.SearchAsync 

on

var appts = new Appointments();

在“期刊代理人”中。 问题在于期刊代理人。 之前完成

NotifyComplete();
        }

请你帮忙告诉我如何等待在这里完成的所有电话:

static void Appointments_SearchCompleted(object sender, AppointmentsSearchEventArgs e)
        {
            try
            {
                UpdatePrimaryTile(e.Results
                .Where(a => a.Subject != null)
                .OrderBy(a => a.StartTime)
                .ToList());
            }
            catch (System.Exception)
            {

            }
        }

public static void UpdatePrimaryTile(List<Appointment> calendarItems)
        {
...........
..........
}

在调用“NotifyComplete”之前。

谢谢!

的Jakub

1 个答案:

答案 0 :(得分:1)

您可以使用 await 关键字等待异步操作完成。

await appts.SearchAsync

另一种选择 - 在异步调用完成之前有一个休眠的循环。

appts.SearchAsync
while (true)
{
   if (searchCompleted)
   {
      break;
   }
   else
   {
      Thread.Sleep(100);
   }
}

然后在事件处理程序中......

void Appointments_SearchCompleted(object sender, AppointmentsSearchEventArgs e)
{
   searchCompleted = true;
   // Other logic
}