1

在我的 Windows Phone 7 应用程序中,我从 Web 服务获取数据。

所以在我的应用程序启动时,我检查我的数据是否设置在本地存储中,如果不是(第一次运行)我已经提出请求HttpWebRequest并等待响应。

SetupAppData(); //chack in local storage
if (CheckNetworkConnection(false))
    if (appData == null)
        GetAppData();
...

    public void GetAppData()
    {
        HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create("some url");
        request.Method = "POST";
        request.ContentType = "application/x-www-form-urlencoded";
        request.BeginGetRequestStream(RequestData_Completed, request);
    }
...

RequestData_Completed我设置请求数据并调用request.BeginGetResponse(ResponseData_Completed, request); 然后当我的响应返回到应用程序时,我将其更改为我的对象并在应用程序中使用。

但我的问题是我在响应返回之前在我的 xaml 视图中使用了这些数据。而且我不知道如何让我的观点等待回应。

我试图创建一些boolisDataSetted,当我的响应返回时将其设置为 true 并在 while 循环中检查其值,但它阻止了应用程序并且从未处理过响应。

这个问题有什么解决办法吗?

4

1 回答 1

0

只需RequestData_Completed在处理数据后触发事件,并在事件发生时让您的 UI 响应。

于 2013-08-15T10:45:24.067 回答