コード例 #1
0
ファイル: ChartMenu.xaml.cs プロジェクト: dixma94/ChartBuider
        private void DGrid_KeyDown(object sender, KeyEventArgs e)
        {
            vm = this.DataContext as ViewModelCHB;
            if (!isManualEditBegin)
            {
                if (e.Key == Key.Delete)
                {
                    var selIndex = DGrid.SelectedIndex;
                    if (selIndex > -1)
                    {
                        string format_string;

                        // поиск нужного элемента в коллекции
                        if (Convert.ToDouble(vm.RVData[DGrid.SelectedIndex].CellVoltage) > 10)
                        {
                            format_string = String.Format("{0:f2}", (vm.RVData[DGrid.SelectedIndex].CellVoltage));
                        }
                        else
                        {
                            format_string = String.Format("{0:f3}", (vm.RVData[DGrid.SelectedIndex].CellVoltage));
                        }
                        List <AnalizerData> an = vm.AnData.Where(x =>
                                                                 (x.SecNumber == vm.RVData[DGrid.SelectedIndex].CellName) &&
                                                                 (x.PrimNumber == vm.SelectedBattery) &&
                                                                 (x.Voltage == format_string)
                                                                 ).ToList();


                        for (int i = 0; an.Count > i; i++)
                        {
                            vm.AnData.RemoveAt(vm.AnData.IndexOf(an[i]));
                        }


                        vm.modelChb.GetRVData();
                        vm.LLPoint = vm.RVData.Select(item => new LevelLinePoint()
                        {
                            PointX = item.CellName, PointY = vm.Moda
                        }).ToList();
                        vm.modelChb.GetAxisScale();
                        vm.modelChb.ViewChart();
                    }
                }
            }
        }
コード例 #2
0
ファイル: ChartMenu.xaml.cs プロジェクト: dixma94/ChartBuider
        private void DGrid_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e)
        {
            vm = this.DataContext as ViewModelCHB;
            if (!isManualEditCommit)
            {
                isManualEditCommit = true;
                string format_string;

                // поиск нужного элемента в коллекции
                if (Convert.ToDouble(vm.RVData[e.Row.GetIndex()].CellVoltage) > 10)
                {
                    format_string = String.Format("{0:f2}", (vm.RVData[e.Row.GetIndex()].CellVoltage));
                }
                else
                {
                    format_string = String.Format("{0:f3}", (vm.RVData[e.Row.GetIndex()].CellVoltage));
                }
                var an = vm.AnData.Where(x =>
                                         (x.SecNumber == vm.RVData[e.Row.GetIndex()].CellName) &&
                                         (x.PrimNumber == vm.SelectedBattery) &&
                                         (x.Voltage == format_string)
                                         );

                var text = e.EditingElement as TextBox;

                switch (e.Column.DisplayIndex)
                {
                case 0:
                    foreach (var item in an)
                    {
                        item.SecNumber = text.Text;
                    }
                    vm.modelChb.GetRVData();
                    break;

                case 1:
                    var andata = an.Where(x => x.Frequency == vm.SelectedFrequency);

                    switch (vm.SelectedParameterIndex)
                    {
                    case 0:
                        andata.First().ZValue = text.Text;

                        break;

                    case 1:
                        andata.First().RValue = text.Text;
                        break;

                    case 2:
                        andata.First().XValue = text.Text;
                        break;

                    case 3:
                        andata.First().AValue = text.Text;
                        break;

                    default:
                        break;
                    }
                    vm.modelChb.GetRVData();
                    break;

                case 2:
                    foreach (var item in an)
                    {
                        item.Voltage = text.Text;
                    }
                    vm.modelChb.GetRVData();
                    break;

                default:
                    break;
                }



                vm.LLPoint = vm.RVData.Select(item => new LevelLinePoint()
                {
                    PointX = item.CellName, PointY = vm.Moda
                }).ToList();
                vm.modelChb.GetAxisScale();
                vm.modelChb.ViewChart();

                isManualEditCommit = false;
                isManualEditBegin  = false;
            }
        }
コード例 #3
0
ファイル: ChartMenu.xaml.cs プロジェクト: dixma94/ChartBuider
 public ChartMenu()
 {
     InitializeComponent();
     vm = this.DataContext as ViewModelCHB;
 }
コード例 #4
0
 public EditDialog(ViewModelCHB viewmodel)
 {
     InitializeComponent();
     vm          = viewmodel;
     DataContext = vm;
 }
コード例 #5
0
 public Window1(ViewModelCHB viewmodel)
 {
     InitializeComponent();
     vm          = viewmodel;
     DataContext = vm;
 }
コード例 #6
0
ファイル: Chart.xaml.cs プロジェクト: dixma94/ChartBuider
 public Chart(ViewModelCHB vm)
 {
     InitializeComponent();
     DataContext = vm;
     _vm         = vm;
 }