public void Refresh()
        {
            int year = DateTime.Now.Year;
            int month = DateTime.Now.Month;
            if (CBYear.SelectedValue != null && CBMonth.SelectedValue != null)
            {
                year = (int)CBYear.SelectedValue;
                month = (int)CBMonth.SelectedValue;
            }

            if (LoadTask == null || LoadTask.IsCompleted)
                LoadTask = Task.Factory.StartNew(() =>
                {
                    var datas = WakaAnalyzer.Month.Report(year, month);
                    if (ListTool.HasElements(datas))
                    {
                        var first = datas.FirstOrDefault();
                        if (first != null && ListTool.HasElements(first.Item2))
                        {
                            List<DateTime> dt = first.Item2.OrderBy(x => x.Item1).Select(x => x.Item1).ToList();
                            List<string> lb = new List<string>();
                            dt.ForEach(x =>
                            {
                                lb.Add(x.ToString("dd日"));
                            });
                            var career = WakaAnalyzer.Month.Career(year, month);
                            var careerFmt = DateTimeTool.ToHMS(career);
                            var avgFmt = DateTimeTool.ToHMS(career / DateTool.MonthDays(year, month));
                            App.Current.Dispatcher.Invoke((Action)(() =>
                            {
                                Labels = lb.ToArray();
                                TimeDesc = $"{year} 年 {month} 月,共计:{careerFmt.Item1} 时 {careerFmt.Item2} 分,日均:{avgFmt.Item1} 时 {avgFmt.Item2} 分";
                            }));
                        }

                        App.Current.Dispatcher.Invoke(() =>
                        {
                            Formatter = value =>
                            {
                                if (value > 0)
                                {
                                    StringBuilder sb = new StringBuilder();
                                    var time = DateTimeTool.ToHMS(value);
                                    if (time.Item1 > 0) sb.Append($"{time.Item1} 小时");
                                    if (time.Item2 > 0) sb.Append($" {time.Item2} 分钟");
                                    return sb.ToString();
                                }
                                return null;
                            };
                        });

                        SeriesCollection = new SeriesCollection();
                        datas.ForEach(x =>
                        {
                            string title = x.Item1;
                            double[] values = x.Item2.OrderBy(y => y.Item1).Select(y => y.Item2).ToArray();

                            App.Current.Dispatcher.Invoke((Action)(() =>
                            {
                                SeriesCollection.Add(
                                    new StackedColumnSeries
                                    {
                                        Title = title,
                                        Values = new ChartValues<double>(values),
                                        StackMode = StackMode.Values
                                    });
                            }));
                        });
                    }
                });
        }