public void RefreshTimeSheetList()
        {
            var t = Calendar.DisplayDate;

            Console.WriteLine("{0}: {1}", t.GetType(), t.ToString());
            using (WorkTimeTrackerContext context = new WorkTimeTrackerContext())
            {
                TicketsDataGrid.ItemsSource = context.TimeSheets.ToList();
            }

            return(true);
        }
        private void RefreshCurrentTimer()
        {
            DateTime startWorkTime = DateTime.Now;

            JetEntityFrameworkProvider.JetConnection.ShowSqlStatements = true;
            while (isTimerStarted)
            {
                DateTime currentDateTime = DateTime.Now;
                TimeSpan diff            = currentDateTime - startWorkTime;

                Updater       uiUpdater  = new Updater(CurrentTimer);
                StringBuilder difference = new StringBuilder();
                if (diff.Days > 0)
                {
                    difference.Append(diff.Days.ToString()).Append("d ");
                }
                if (diff.Hours > 0)
                {
                    difference.Append(diff.Hours.ToString()).Append("h ");
                }
                if (diff.Minutes > 0)
                {
                    difference.Append(diff.Minutes.ToString()).Append("m ");
                }
                if (diff.Seconds > 0)
                {
                    difference.Append(diff.Seconds.ToString()).Append("s ");
                }

                Dispatcher.BeginInvoke(DispatcherPriority.Send, uiUpdater, difference.ToString());
                Thread.Sleep(1000);
            }

            using (var context = new WorkTimeTrackerContext())
            {
                context.TimeSheets.Add(new TimeSheet()
                {
                    Start  = startWorkTime,
                    Finish = DateTime.Now,
                    Ticket = null
                });

                context.SaveChanges();
            }
        }