private void ConfigPoint(bool createNew = false) { var wnd = new View.ConfigWindows.DialogWindow(); wnd.Owner = Helpers.MVVM.MVVMHelper.GetActiveWindow(); wnd.Title = createNew ? "Создание точки" : "Редактирование точки"; var cont = new View.ConfigWindows.WayPointConfigPanel(); wnd.Content = cont; WayPointViewModel wpvm = null; if (createNew || _selectedIOPoint == null) { WayPoint wp = new WayPoint(0, 0, Layers.IndexOf(SelectedLayer), 5, 5); wpvm = new WayPointViewModel(_scenario.Services, AllWayPoints.Select(p => p.WayPoint), wp); wpvm.LayerId = Layers.IndexOf(_selectedLayer); } else { wpvm = _selectedIOPoint; wpvm.CloseView = false; } wnd.DataContext = wpvm; wnd.ShowDialog(); if (wpvm.DialogResult == true) { if (createNew) { AllWayPoints.Add(wpvm); OnPropertyChanged("IOPoints"); } } }