BackgroundWorker przekazywanie zmiennej do DoWork

0

Witam.
Mam sobie na formatce BackgroundWorker worker. Wykonuje on określoną operację. Wykonuje on ją na zmiennej typu string. Problem polega na tym, że muszę mu tą zmienną przekazać bez używania zmiennych globalnych, bezpośrednio w metodzie worker.RunWorkerAsync(). Czy jest to wykonalne? Myślałem o czymś w stylu:

private void SendMessageWorker_DoWork(object sender, DoWorkEventArgs e, string zmienna)
{
	//zrób coś ze zmienną zmienna
}

, ale nie wiem czy da się to zrobić. Proszę o pomoc.

0

Taką zmienną przekazujesz jako argument metody RunWorkerAsync.
Następnie odwołujesz się do niej przez e.Argument w handlerze event'u DoWork.

0

a jak potrzebuję przekazać kilka zmiennych?(powyżej 1 nie puszcza)

0

Utwórz klasę pośrednią i przekaż w niej wszystkie potrzebne zmienne.

0
maze napisał(a):

Utwórz klasę pośrednią i przekaż w niej wszystkie potrzebne zmienne.

A jeżeli okaże się, że ta klasa jest wykorzystana tylko do wymiany danych w BackgroundWorker, warto zastanowić się nad wykorzystaniem Tuple

1 użytkowników online, w tym zalogowanych: 0, gości: 1