У меня проблема с компонентом "BackgroundWorker"
Когда я нажимаю на кнопку, мне нужно выполнить n итераций, которые занимают время, и я должен делегировать эту операцию другому потоку
Я следовал этому уроку: урок (на французском)
Вот мой код:
private void btnIterate_Click(object sender, EventArgs e)
{
bgwIterer.RunWorkerAsync();
}
private void bgwIterer_DoWork(object sender, DoWorkEventArgs e)
{
BackgroundWorker worker = sender as BackgroundWorker;
e.Result = new Iterate(btnIterate, btnReinit, txtInput, lblState, entree, worker, e);
}
private void bgwIterer_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
this.lblState.Text = e.ProgressPercentage;
}
bgwIterer - это мой компонент BackgroundWorker, и вот метод, который я хотел быделегат:
class Iterate
{
// Constructeur surchargé de la classe Iterate:
public Iterate(Button mybtnIterate, Button mybtnReinit,
TextBox mytxtInput, Label mylblState,
int myentree, BackgroundWorker worker,
DoWorkEventArgs e)
{
int pourcent = 0;
int var0 = 0, var1;
mybtnIterate.Enabled = false;
mytxtInput.Focus();
do
{
var1 = 0;
do
{
++var1;
}
while (var1 < myentree);
++var0;
pourcent = (var0 / myentree) * 100;
worker.ReportProgress(pourcent);
}
while (var0 < myentree);
mylblState.Text = "Terminé !";
mytxtInput.Enabled = false;
}
}
, и это проблема:
Тип или имя пространства имен 'BackGroundWorker' не может бытьнайдено (вам не хватает директивы using или ссылки на сборку?)
У кого-нибудь есть идея?