Witam,
W swoim oknie posiadam kontrolkę progressbar. W innej klasie po zakończeniu metody jest zmieniane pole z innej klasy, które odpowiada za wartość paska. W klasie(oknie), w której znajduje się progressbar mam stworzony licznik i metody:
private static System.Timers.Timer aTimer;
public Okno()
{
aTimer = new System.Timers.Timer(1100);
myDel += Change;
aTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent);
aTimer.Interval = 1000;
aTimer.Enabled = true;
aTimer.Start();
}
public void OnTimedEvent(object source, ElapsedEventArgs e)
{
Pasep_Postepu.Dispatcher.Invoke(myDel);
}
delegate void Del();
Del myDel;
private void Change()
{
Pasep_Postepu.Value = OknoGlowne.LICZNIK_PASKA;
}
Podczas wykonywania metody z innej klasy tak jak wspomniałem pole LICZNIK_PASKA jest zmieniane i dzięki timerowi powinno aktualizować postęp na pasku. Niestety taka konstrukcja mi nie działa. Pasek stoi w miejscu. Aby sprawdzić czy wartość paska jest zwiększana dodałem MessageBox wyświetlający wartość po zwiększeniu i w tym momencie gdy pojawia się okienko z wartością LICZNIK_PASKA, a progressbar poprawnie się aktualizuje. W czym jest problem?