I found the solution to my problem.
void t_Tick(object sender, object e)
{
TimeSpan ts = endtime.Subtract(DateTime.Now);
string countdowndays = ts.Days.ToString();
daytxtblk.Text = countdowndays;
string countdownhours = ts.Hours.ToString();
hourstxtblk.Text = countdownhours;
string countdownminutes = ts.Minutes.ToString();
minutetxtblk.Text = countdownminutes;
string countdownseconds = ts.Seconds.ToString();
sectxtblk.Text = countdownseconds;
}
private void christmas_2012_Click(object sender, RoutedEventArgs e)
{
if (this.IsEnabled)
{
txtboxchr.Visibility = Visibility.Visible;
txtboxhours.Visibility = Visibility.Visible;
txtboxminutes.Visibility = Visibility.Visible;
txtboxseconds.Visibility = Visibility.Visible;
daytxtblk.Visibility = Visibility.Visible;
hourstxtblk.Visibility = Visibility.Visible;
minutetxtblk.Visibility = Visibility.Visible;
sectxtblk.Visibility = Visibility.Visible;
}
t = new DispatcherTimer();
endtime = new DateTime(2012, 12, 25, 0, 0, 0);
if (DateTime.Now.Year > endtime.Year)
{
t.Stop();
txtboxchr.Visibility = Visibility.Collapsed;
txtboxhours.Visibility = Visibility.Collapsed;
txtboxminutes.Visibility = Visibility.Collapsed;
txtboxseconds.Visibility = Visibility.Collapsed;
daytxtblk.Visibility = Visibility.Collapsed;
hourstxtblk.Visibility = Visibility.Collapsed;
minutetxtblk.Visibility = Visibility.Collapsed;
sectxtblk.Visibility = Visibility.Collapsed;
pleasesetdat();
}
else
{
t.Interval = new TimeSpan(1000);
TimeSpan ts = endtime.Subtract(DateTime.Now);
t.Tick += t_Tick;
t.Start();
}
}