I'm trying to run simple timer on project startup:
type NJHomeViewModel(config : Config) as X =
inherit ViewModelBase()
do
(X.Timer : Timer).Elapsed.Add(fun args -> X.OnTimedEvent(args))
(X.Timer : Timer).Interval <- 3000.0
(X.Timer : Timer).Enabled <- true
(X.Timer : Timer).Start()
member X.Timer = new Timer()
member X.OnTimedEvent args = X.Change()
So I want each 3 seconds run X.Change() function, it doesn't work this way, even when I added it to button nothing is changed.
member X.Next =
new RelayCommand((fun canExecute -> true),
(fun action ->
(X.Timer : Timer).Elapsed.Add(fun args -> X.OnTimedEvent(args))
(X.Timer : Timer).Interval <- 3000.0
(X.Timer : Timer).Enabled <- true
(X.Timer : Timer).Start() ))
What is correct way to start my timer with a "Tick" action ?