Windows Phone 7 DownloadString завершена, и какой был URL-адрес? Или параметры?

#c# #windows-phone-7

#c# #windows-phone-7

Вопрос:

     private void button7_Click(object sender, RoutedEventArgs e)
    {
        WebClient client = new WebClient();
        client.DownloadStringCompleted  = new DownloadStringCompletedEventHandler(client_DownloadStringCompleted);
        client.DownloadStringAsync(new Uri("http://asd.com/bb"));
    }

    void client_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
    {
        if (e.Error == null)
        {
            MessageBox.Show(e.Result);

        }
        else {
            MessageBox.Show("err: "   e.Error.ToString());
        }
    }
  

как я могу получить URL-адрес из DownloadStringCompleted? Или как я могу передать какой-либо параметр в мой DownloadStringCompleted?

Помогите, пожалуйста

Ответ №1:

Вы можете передать любой объект через второй параметр DownloadStringAsync . Затем вы можете получить этот объект через DownloadStringCompletedEventArgs .Пользовательское состояние.

 private void button7_Click(object sender, RoutedEventArgs e)
{
    WebClient client = new WebClient();
    client.DownloadStringCompleted  = new DownloadStringCompletedEventHandler(client_DownloadStringCompleted);
    var uri = new Uri("http://asd.com/bb");
    client.DownloadStringAsync(uri, uri);
}

void client_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
    var uri = e.UserState as Uri;
    //...
}