Hello
Use the web client UploadProgressChanged event
private void cmdBrowseAndUpload_Click(object sender, EventArgs e)
{
string fileName = string.Empty;
using (var dlg = new OpenFileDialog())
{
dlg.Filter = "All Files|*.*";
if (dlg.ShowDialog(this) == DialogResult.OK)
{
fileName = dlg.FileName;
}
}
string url = string.Format(@"https://apis.live.net/v5.0/me/skydrive/my_documents/files/{0}?access_token={1}",
Path.GetFileName(fileName), access_token);
using (var client = new WebClient())
{
client.UploadProgressChanged += new UploadProgressChangedEventHandler(client_UploadProgressChanged);
client.UploadDataAsync(new Uri(url), "PUT", ImageToByteArray(fileName));
}
}
void client_UploadProgressChanged(object sender, UploadProgressChangedEventArgs e)
{
}