```
    private void btn_Start_Clicked(object sender, System.EventArgs e)
    {
        RunTimer(true);
    }

    private void btn_Pause_Clicked(object sender, System.EventArgs e)
    {
        RunTimer(false);
    }
    public void RunTimer(Boolean Value)
    {
        Boolean excuteTimer = Value;
        TimeSpan TimeElement = new TimeSpan();

        Device.StartTimer(new TimeSpan(0, 0, 1), () =>
        {
            if (Value)
            {
                TotalTime = TotalTime + TimeElement.Add(new TimeSpan(0, 0, 1));
                label.Text = string.Format("{0:hh\\:mm\\:ss}", TotalTime);
                // returning true will fire task again in 2 minutes.
                return true;
            }

            // No longer need to recur. Stops firing task
            return false;
        });

    }

```

I am trying to run a timer every one sec. It runs well but when pause is clicked, it does not stop until start is clicked again.