Я использую ProgressBar в C #, но у меня возникла небольшая проблема, я подключаюсь к серверу в нашей компании, а затем я начинаю скачивать XML-файл с этих 4K на 4K и отображать этот прогресс на ProgressBar идля показа этого, если файл до 100K до сих пор, тогда максимальный размер моего индикатора прогресса будет 100, и если он изменится, я бы изменил его максимальный размер на 1000, затем 10000 и т. д., таким образом, я могу сделать это
progressbar1.value += 4;
Так что это как-то работает, но все, что вы знаете, правильное решение - это знать размер файла, который будет загружать мое соединение, прежде чем начать загружать его.Я думаю немного, и я думаю, что использование Curl может решить проблему, но я не знаю точно, как использовать его в C # или в любом случае, чтобы решить эту проблему.
Редактировать: я загружаю файлкак это:
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Credentials = new NetworkCredential(usr, pass);
ServicePointManager.ServerCertificateValidationCallback = ((sender, certificate, chain, sslPolicyErrors) => true);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader s = new StreamReader(response.GetResponseStream());
int i = 0;
int j = 0;
int lastIndex = 0;
int readNum = 0;
Console.WriteLine("start at : " + DateTime.Now);
while (!s.EndOfStream)
{
readNum = s.ReadBlock(temp, 0, 4096);
if (w != null)
w.incByVolume(4);
ret += new String(temp);
temp = new char[4096];
}
Заранее спасибо ...