
نوشته شده توسط
projeha
فکر می کنم که یه سربار اضافی به وجود آوردید ، فکر کنید که اگر بخوهید اونو تغییر بدین یا ارتقاش بدین بازم جواب بده مثلا فکر کنید که می خواهید درصد پیشرفت عملیات رو توی PeogressBar نمایش بدین(ظاهرا می خواین که فقط یه نوشته هنگام پروسه سنگینتون نمایش داده بشه).
این جا هست که باید از ReportProgress استفاده کنید.
نمی دونم مشکل جناب خانی حل شده یا نه من سریع برنامه ای که برای دیباگ در پست شماره 9 همین تاپیک گذاشته بودن رو بررسی و تصحیح کردم، دوستان ببینید و نظر بدین.توی این کد از رویداد RunWorkerCompleted استفاده کردم
ان شا الله یه نمونه کاملتر رو می ذارم.
با سلام مجدد و تشکر از راهنمایی های خوبی که تا الان کردید...
من برای رفع ارور زیر :
Cross-thread operation not valid: Control 'Pnl_Container' accessed from a thread other than the thread it was created on.
در فرم لود خط زیر رو اضافه کردم که در نتیجه کد درست انجام میشه و اروری نمیده :
Control.CheckForIllegalCrossThreadCalls = false;
این کد چکار میکنه ؟ آیا این روش اصولی هست ؟
وقتی در زمانم کار بک گراند ورکر فرم رو میبندیم نیازی هست که در ایونت close فرم عملیات در حال انجام رو cancel کنیم یا اتوماتیک کنسل میشود ؟ ( فرم رو بستیم اما برنامه هنوز باز است)