PDA

View Full Version : سوال: چطور میشه در وب بروزر thread را کنسل کرد



sajadzare
دوشنبه 06 آبان 1392, 17:26 عصر
سلام
من یه برنامه نوشتم که در اون با وب بروزر یک اتوماسیون درست کردم که با inspect element کار میکنم . این عملیات در یک thread جداگانه انجام میشه که اون ترد رو توی backgroundworker_Dowork گذاشتم

من یه دکمه دارم که میخوام با اون بشه عملیات ترد رو در هر جا که هست متوقف کنم و برنامه خطا نده. چون همونطور که میدونید در webbrowser کدهای مختلفی برای کلیک یا ورود اطلاعات در تکست باکس ها انجام میشه

تصور من اینه که باید قبل از اجرای هر کد یه بار چک کنم ببینم backgroundworker.cancelationpending ترو هست یا نه اگر ترو نبود کد بعد اجرا بشه . که به نظرم یه کم غیر منطقی میاد نظر شما چیه .

کد مربوط به دکمه کنسل

backgroundWorker1.CancelAsync();

کد مربوط به چک کردن کنسل شدن یا نشدن


if (backgroundWorker1.CancellationPending)
{

e.Cancel = true;

}



var th2 = new Thread(() =>
{

// تمام عملیات در این بدنه انجام میشود

});

th2.SetApartmentState(ApartmentState.STA);
th2.Start();

sajadzare
دوشنبه 06 آبان 1392, 19:01 عصر
var th2 = new Thread(() =>
{

// تمام عملیات در این بدنه انجام میشود

});

th2.SetApartmentState(ApartmentState.STA);
th2.Start();