نمایش نتایج 1 تا 3 از 3

نام تاپیک: دانلود کردن فایل همراه با ProgressBar

  1. #1
    کاربر دائمی آواتار samiasoft
    تاریخ عضویت
    مهر 1391
    محل زندگی
    اردبیل
    پست
    1,242

    دانلود کردن فایل همراه با ProgressBar

    سلام

    چگونه میتوان وقتی فایلی را از لینکی دانلود میکنیم درصد پیشرفت اونو در ProgressBar به نمایش دربیاریم؟

    راه حلی که به ذهنم میرسه این هستش که ماکزیمم ProgressBar را برابر حجم فایل قرار بدیم و هرلحظه که فایل دانلود میشه حجم اونو بدست بیاریم و ProgressBar را کنترل کنیم.

    آیا این کار خوبیه؟ شما راه حل بهتری سراغ دارید؟

  2. #2

    نقل قول: دانلود کردن فایل همراه با ProgressBar

    نقل قول نوشته شده توسط samiasoft مشاهده تاپیک
    سلام

    چگونه میتوان وقتی فایلی را از لینکی دانلود میکنیم درصد پیشرفت اونو در ProgressBar به نمایش دربیاریم؟

    راه حلی که به ذهنم میرسه این هستش که ماکزیمم ProgressBar را برابر حجم فایل قرار بدیم و هرلحظه که فایل دانلود میشه حجم اونو بدست بیاریم و ProgressBar را کنترل کنیم.

    آیا این کار خوبیه؟ شما راه حل بهتری سراغ دارید؟
    اینکه ماکزیمم ProgressBar را برابر حجم فایل قرار بدید و بعد از دانلود هر جزء فایل، ProgressBar را آپدیت کنید درست نیست، چون باعث قفل شدن UI برنامه میشه. در اینگونه موارد درصد پیشرفت بگیرید. وقتی حجم کل و حجم دانلود شده را دارید میتونید درصد بگیرید و در صورتی که این درصد پیشرفت تغییر کرد، اونوقت ProgressBar را آپدیت کنید. در اینصورت ماکزیمم ProgressBar هم 100 باید باشه.

  3. #3
    کاربر دائمی آواتار shahryari
    تاریخ عضویت
    اسفند 1390
    محل زندگی
    آذربايجان
    سن
    40
    پست
    1,236

    نقل قول: دانلود کردن فایل همراه با ProgressBar

    اینکار به راحتی اب خوردن با کلاس webclient میسره..
    این کلاس رویدادی داره به نام DownloadProgressChanged که در این رویداد میتونی میزان پیشرف رو بدی به پروگرسبار
            private void Form1_Load(object sender, EventArgs e)
    {
    System.Net.WebClient wc = new System.Net.WebClient();
    wc.DownloadProgressChanged += new System.Net.DownloadProgressChangedEventHandler(wc_ DownloadProgressChanged);

    wc.DownloadFileAsync(new Uri("http://test.ir/test.rar"), "c:\\test.rar");
    }

    void wc_DownloadProgressChanged(object sender, System.Net.DownloadProgressChangedEventArgs e)
    {
    progressBar1.Value = e.ProgressPercentage;
    }

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •