SharpBox进度条为用户

时间:2016-04-24 16:11:22

标签: c# dropbox progress sharpbox

我正在尝试在uploadFile期间向用户显示进度条。我可以通过下面的方法获得后端的百分比,但是我无法打印e.PercentageProgress返回的百分比以显示给用户。

  static void UploadDownloadProgress(Object sender, FileDataTransferEventArgs e)
  {
        // Need to show this on a label or return to front end somehow
        System.Diagnostics.Debug.WriteLine(e.PercentageProgress);            

        e.Cancel = false;
  }

问题是我怎样才能让e.PercentageProgress在aspx页面上显示或者在javascript中使用它?

1 个答案:

答案 0 :(得分:0)

尝试这样的事情:

public class ProgressInformer {

    public static string Progress = "0";

    static void UploadDownloadProgress(Object sender, FileDataTransferEventArgs e)
    {

        // print a dot           
        System.Diagnostics.Debug.WriteLine(e.PercentageProgress);

        // Need to show this on a label or return to front end somehow
        ProgressInformer.Progress = e.PercentageProgress.ToString();

        e.Cancel = false;
    }
}

现在,由于您要使用值设置静态变量,因此可以从其他位置访问它。然后,您可以使用该值在前端使用某种方法或服务进行回显。可能是这样的:

public string EchoToFrontEnd()
{
    return ProgressInformer.Progress;
}
  

限制:如果这对您有用,那么此解决方案仍不是线程安全的。这意味着,您无法回显多次下载的进度。您一次只需要下载一次。

希望这有助于......!