private void SetGraph() { ReadTestData(); ReadGradingSystemData(); SeriesCollection.Clear(); LineSeriesCollection.Clear(); DateTimes.Clear(); if (SelectedSubject == null) { return; } if (SelectedTestType == null) { return; } if (SelectedGradingPeriod == null) { return; } //var selectedSubject = AssociatedPerson.Subjects.Where(x => x.Name == SelectedSubject.Name); LineSeries dummyLineSeries = new LineSeries(); ChartValues <double> chartValues = new ChartValues <double>(); foreach (var test in SelectedSubject.Tests.Where(x => x.TestType.Name == SelectedTestType.Name && x.GradingPeriod.Name == SelectedGradingPeriod.Name)) { chartValues.Add(test.Percentage); DateTimes.Add(test.TestDate.ToString(CultureInfo.InvariantCulture)); if (chartValues.Count() > 4) { GraphWidth = chartValues.Count() * 150; } } dummyLineSeries.Values = chartValues; //dummyLineSeries.LineSmoothness = 0; LineSeriesCollection.Add(dummyLineSeries); foreach (var s in LineSeriesCollection) { SeriesCollection.Add(s); } }
private void LoadDashboardTimespan() { try { // Load Current Day Start and Day End var d = DateTime.Now; var dayStart = new DateTime(d.Year, d.Month, d.Day, 0, 0, 0, DateTimeKind.Local); var dayEnd = dayStart.AddDays(1); DateTimes.Clear(); for (var x = 0; x <= 24; x++) { DateTimes.Add(dayStart.AddHours(x)); } // Load From Setting string fromSetting = Properties.Settings.Default.SavedStatusFromTime; DateTime savedFrom = DateTime.MinValue; DateTime.TryParse(fromSetting, out savedFrom); // Load To Setting string toSetting = Properties.Settings.Default.SavedStatusToTime; DateTime savedTo = DateTime.MinValue; DateTime.TryParse(toSetting, out savedTo); // Set From if (savedFrom > dayStart) { From = savedFrom; } else if (savedFrom > DateTime.MinValue) { From = new DateTime(dayStart.Year, dayStart.Month, dayStart.Day, savedFrom.Hour, 0, 0); } else { From = dayStart; } // Set To if (savedTo > dayStart && savedTo < dayEnd && savedTo > From) { To = savedTo; } else if (savedTo > DateTime.MinValue && savedTo.Hour > 0) { To = new DateTime(dayStart.Year, dayStart.Month, dayStart.Day, savedTo.Hour, 0, 0); } else { To = dayEnd; } SaveDashboardTimespan(); SendDashboardTimespan(); } catch (Exception ex) { Logger.Log("LoadDashboardTimespan :: Exception :: " + ex.Message); } }
private void UpdateDashboardTimespan() { try { // Load Current Day Start and Day End var d = DateTime.Now; var dayStart = new DateTime(d.Year, d.Month, d.Day, 0, 0, 0, DateTimeKind.Local); var dayEnd = dayStart.AddDays(1); DateTime from = DateTime.MinValue; DateTime to = DateTime.MinValue; // Set From if (From > dayStart) { from = From; } else if (From > DateTime.MinValue) { from = new DateTime(dayStart.Year, dayStart.Month, dayStart.Day, From.Hour, 0, 0); } else { from = dayStart; } // Set To if (To > dayStart && To <= dayEnd) { to = To; } else if (To > DateTime.MinValue && To.Hour > 0) { to = new DateTime(dayStart.Year, dayStart.Month, dayStart.Day, To.Hour, 0, 0); } else { to = dayEnd; } // Update Timespan if (From != from || To != to) { DateTimes.Clear(); for (var x = 0; x <= 24; x++) { DateTimes.Add(dayStart.AddHours(x)); } From = from; To = to; SaveDashboardTimespan(); SendDashboardTimespan(); } } catch (Exception ex) { Logger.Log("UpdateDashboardTimespan :: Exception :: " + ex.Message); } }