#1 Frank
Backgroudworker je standardní vlákno jako jakékoliv jiné akorát že se menuje Backgroudworker. Nemuže se ti prg.bar. rozject protože prostě neni čas na obnovování při přepínání vláken - pokud je poloha naplnění správně že - to tu vidět neni. Co třeba ProgressBar.Step ?
https://docs.microsoft.com/cs-cz/dotnet/api/system.windows.forms.progressbar.step?view=netframework-4.8
Taky musíš někam vložit Application.DoEvents() asi do DoWork. a pak taky je potřeba dát ProgressBar.Refresh() a možná i vyvolat Refresh nadřazené komponenty. WinForms jsou komplikovaný. Já bejt tebou bych přešel z WinForms na WPF.
jinak ten tvuj zápis kodu:
int cislo = GenericList[2].ToString() == string.Empty ? 1 : Convert.ToInt32(GenericList[2]);
double jinecislo = GenericList[1].ToString() == string.Empty ? 0 : Convert.ToDouble(GenericList[1]);
to je fakt tragédie ... ty asi budeš mladší ročník co ? ty ses učil programovat někde z nějaký "moderní" učebnice co ? ...
1/ deklarace+definice proměnných je vždy zvlášť na začátku metody pokud k tomu nemáš zvláštní důvody.
2/ použití ? místo if je spíše otázka C/C++ a moc se nepoužívá protože se fakt blbě čte.
3/ GenericList[2].ToString() == string.Empty ?? to je co ??? přeci si deklaroval že
List<object> Arguments = new List<object>(); ?? ne ?? a přitom tam dáváš různý objekty
ty děláš konverzi na string ??? to nechápu ... a co použít GetType() ??? tohle skončí katastrofou ...
4/ progress bar inicializace:
this.progressBar2.Visible = true;
this.progressBar2.Minimum = minLimit;
this.progressBar2.Maximum = (Int32)maxLimit;
this.progressBar2.Value = 1;
this.progressBar2.Step = 1;
this.progressBar2.Refresh();
progresbar ta část co určuje pozici posuvníku v cyklu:
this.progressBar2.Value = (Int32)limit; // aktualni pozice
this.progressBar2.PerformStep();
this.progressBar2.Refresh();
a ještě drobnost .... používej MS VS 2019.