/// <summary> /// Метод для очистки всех коллекций AnData, RVData, BatteryNums, FrequencyItems /// </summary> public void ClearAll() { try { AnData.Clear(); RVData.Clear(); BatteryNums.Clear(); FrequencyItems.Clear(); SelectedFrequency = null; LLPoint.Clear(); ChartTitle = Thread.CurrentThread.CurrentUICulture.ToString().Contains("en") ? "Battery Parameters" : "Параметры АКБ"; } catch (Exception ex) { MessageBox.Show(ex.Message); } }
/// <summary> /// Метод для получения набора значений параметров R и U, а также для составления /// списка номеров батарей и частот тестового сигнала /// </summary> public void GetRVData() { try { IsCanBild = false; var rvdata = new List <CellData>(); RVData.Clear(); var anDataBat = AnData.Where(item => item.PrimNumber.Equals(SelectedBattery)); FrequencyItems = anDataBat.Select(item => item.Frequency).Distinct().OrderBy(item => int.Parse(item)).ToList(); if (SelectedFrequency == null) { SelectedFrequency = FrequencyItems.LastOrDefault(); } var AnDataBatFreq = new List <AnalizerData>(anDataBat.Where(item => item.Frequency.Equals(SelectedFrequency))); switch (SelectedSortIndex) { case 0: AnDataBatFreq = !SortDirection?AnDataBatFreq.OrderBy(item => int.Parse(item.SecNumber, new CultureInfo("EN"))).ToList() : AnDataBatFreq.OrderByDescending(item => int.Parse(item.SecNumber, new CultureInfo("EN"))).ToList(); break; case 1: AnDataBatFreq = !SortDirection?AnDataBatFreq.OrderBy(item => double.Parse(item.ZValue, new CultureInfo("EN"))).ToList() : AnDataBatFreq.OrderByDescending(item => double.Parse(item.ZValue, new CultureInfo("EN"))).ToList(); break; case 2: AnDataBatFreq = !SortDirection?AnDataBatFreq.OrderBy(item => double.Parse(item.RValue, new CultureInfo("EN"))).ToList() : AnDataBatFreq.OrderByDescending(item => double.Parse(item.RValue, new CultureInfo("EN"))).ToList(); break; case 3: AnDataBatFreq = !SortDirection?AnDataBatFreq.OrderBy(item => double.Parse(item.XValue, new CultureInfo("EN"))).ToList() : AnDataBatFreq.OrderByDescending(item => double.Parse(item.XValue, new CultureInfo("EN"))).ToList(); break; case 4: AnDataBatFreq = !SortDirection?AnDataBatFreq.OrderBy(item => double.Parse(item.AValue, new CultureInfo("EN"))).ToList() : AnDataBatFreq.OrderByDescending(item => double.Parse(item.AValue, new CultureInfo("EN"))).ToList(); break; case 5: AnDataBatFreq = !SortDirection?AnDataBatFreq.OrderBy(item => double.Parse(item.Voltage, new CultureInfo("EN"))).ToList() : AnDataBatFreq.OrderByDescending(item => double.Parse(item.Voltage, new CultureInfo("EN"))).ToList(); break; } switch (SelectedParameterIndex) { case 0: rvdata = new List <CellData>(AnDataBatFreq.Select(item => new CellData(item.SecNumber, double.Parse(item.ZValue, new CultureInfo("EN")), double.Parse(item.Voltage, new CultureInfo("EN"))))); break; case 1: rvdata = new List <CellData>(AnDataBatFreq.Select(item => new CellData(item.SecNumber, double.Parse(item.RValue, new CultureInfo("EN")), double.Parse(item.Voltage, new CultureInfo("EN"))))); break; case 2: rvdata = new List <CellData>(AnDataBatFreq.Select(item => new CellData(item.SecNumber, double.Parse(item.XValue, new CultureInfo("EN")), double.Parse(item.Voltage, new CultureInfo("EN"))))); break; case 3: rvdata = new List <CellData>(AnDataBatFreq.Select(item => new CellData(item.SecNumber, double.Parse(item.AValue, new CultureInfo("EN")), double.Parse(item.Voltage, new CultureInfo("EN"))))); break; } RVData = new ObservableCollection <CellData>(rvdata); IsCanBild = true; ChartTitle = SelectedBattery; } catch (Exception ex) { throw new Exception(ex.Message); } }