Hi,
was soll da auch anderes bei rauskommen? Du überschreibst die Variable _MultipleWebClients ja auch immer wieder.
Ich würde es mal mit einer List<WebClient> versuchen. Innerhalb der Schleife deklarierst Du eine neue Variable:
List<WebClient> MultipleWebClients = new List<WebClient>;
...
for (z = 0; z < CheckedCount; z++)
{
WebClient wc = new WebClient();
wc.DownloadFileCompleted += new AsyncCompletedEventHandler(DownloadFileCompleted);
wc.DownloadProgressChanged += new DownloadProgressChangedEventHandler(DownloadProgressChanged);
wc.DownloadFileAsync(new Uri(_downloadUrlList[z].ToString()), tbSavePathArchiv.Text + _downloadRowNameList[z] + ".mp4", dgvDownloads.Rows[z]);
this.MultipleWebClients.Add( wc );
start = DateTime.Now;
}
Den Code hab ich jetzt nur schnell hingeschrieben, es mag also noch ein Fehler enthalten sein. den grundsätzlichen Weg solltest Du aber sehen können.
Ggfs. wäre, je nach Anforderung auch eine eigene Klasse und eine List<EigeneKlasse> sinnvoll. Die eigene Klasse könnte dann als Property die WebClient Instanz aufnehmen, dazu dann bspw. StartTime, ...
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community