/ / Aplikacja zamykająca WebClient po zakończeniu pobierania - c #, .net, wpf, webclient

Zamknij aplikację WebClient po zakończeniu pobierania - c #, .net, wpf, webclient

Pobieram olbrzymi plik (700 + MB) przy pomocy WebClient, a po zakończeniu pobierania aplikacja sama się zamyka.Spróbowałem debugowania, ale nie mogę niczego przechwycić.

public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();

var wc = new WebClient();
wc.DownloadDataAsync(new Uri(@"http://192.168.1.100/FileServer/crypto.bin"));

}
}

Czy to znany błąd?

Odpowiedzi:

1 dla odpowiedzi № 1

Myślę, że problem polega na tym, że musisz zadeklarować de wc zmienna poza inicjatorem.

    WebClient wc;

public MainWindow()
{
InitializeComponent();

wc = new WebClient();
wc.DownloadDataAsync(new Uri(@"http://192.168.1.100/FileServer/crypto.bin"));

}

2 dla odpowiedzi nr 2

Musisz dodać wydarzenie, na przykład:

Private void btnDownload_Click(object sender, EventArgs e)
{
WebClient webClient = new WebClient();
webClient.DownloadFileCompleted += new AsyncCompletedEventHandler(Completed);
webClient.DownloadFileAsync(new Uri("http://mysite.com/myfile.txt"), @"c:myfile.txt");
}

private void Completed(object sender, AsyncCompletedEventArgs e)
{
MessageBox.Show("Download completed!");
}