calculate difference in times over days c#
<p>I am trying get setup a Recording Time label so that when a user clicks a button it starts and when they click another button it stops.</p>

<p>I have tried two different things which have not worked.</p>

<ol>
<li><strong>Setting a Ticker and increment a value by 1 and displaying it.</strong></li>
</ol>

<p><em>This did not work as i am also doing other things in the ticker which means it might take 1.5 seconds but i'm increment by 1, therefore the longer the recording goes on the more inaccruate it is.</em></p>

<ol start="2">
<li><strong>Getting the TimeOfDay when the stream starts and on the ticker method getting the TimeOfDay and subtracting them.</strong></li>
</ol>

<p><em>This is not working because if the recording is left overnight the time turns into minuses I.E -67647.74 seconds.</em></p>

<pre><code>private void StreamClick_Click(object obj)
{
    _streamStartTime = DateTime.Now.TimeOfDay;
}

private void LiveVideoStream_Tick(VideoCaptureDevice cam)
{
    _currentRecordTime = DateTime.Now.TimeOfDay - _streamStartTime;
    RecordTime = _currentRecordTime.ToString();
}
</code></pre>

<p>Does anyone have any other ideas how I can display a nice timer.</p>