0

わかりました、私はこれを持っています:

foreach (FileInfo fileinfo2 in Arquivos2)
{
    label8.Text = "Enviando(NFe): " + fileinfo2.Name + "...";
    label8.Update();
    WebClient client = new WebClient();
    client.Credentials = new System.Net.NetworkCredential(usuario, senha);
    client.UploadProgressChanged += new UploadProgressChangedEventHandler(UploadProgressCallback);
    client.UploadFile(new Uri("ftp://" + ftp + "/" + caminho + "//nf//" + fileinfo2.Name), "STOR", @"C:\\NFe\" + fileinfo2.Name);
    bar++;
    backgroundWorker1.ReportProgress(bar);
}

その仕事はうまくいきますが、私は持っています:

private void UploadProgressCallback(object sender, UploadProgressChangedEventArgs e)
{
    progressBar2.Value = e.ProgressPercentage;
    progressBar2.Update();
}

そして、progressBar2では何も起こりません...

uploadprogress を使用して progressBar2 を更新するにはどうすればよいですか? UploadProgressChanged で UploadFile を使用できませんか?

4

1 に答える 1

2

http://msdn.microsoft.com/en-us/library/system.net.webclient.uploadprogresschanged.aspxによると

このイベントは、非同期アップロードが進行するたびに発生します。

3 つの非同期イベントによってのみ発生します。呼び出しているバージョンはブロッキング メソッドであり、完了するまで返されず、progress イベントが発生しません。

于 2013-03-28T22:45:19.417 に答える