private void UpdateScenarioListPanel(BuilderMode mode, VisualAlertScenarioData defaultScenario = null) { bool isAnyScenario = this.scenarioListView.Items.Any(); switch (mode) { case BuilderMode.ScenarioList: this.scenarioListView.SelectionMode = ListViewSelectionMode.Single; if (isAnyScenario) { var selectedScenario = ScenarioCollection.FirstOrDefault(x => x.Id == defaultScenario?.Id); if (selectedScenario != null) { this.scenarioListView.SelectedItem = selectedScenario; } else { this.scenarioListView.SelectedIndex = 0; } } this.newAlertGrid.Visibility = isAnyScenario ? Visibility.Collapsed : Visibility.Visible; this.visualAlertBuilderWizardControl.Visibility = isAnyScenario ? Visibility.Collapsed : Visibility.Visible; this.scenarioListPanel.Visibility = isAnyScenario ? Visibility.Visible : Visibility.Collapsed; this.deleteButton.Visibility = Visibility.Collapsed; this.newAlertStatusGrid.Visibility = Visibility.Collapsed; this.newAlertButton.IsEnabled = true; break; case BuilderMode.NewAlert: this.newAlertGrid.Visibility = Visibility.Visible; this.visualAlertBuilderWizardControl.Visibility = Visibility.Visible; this.scenarioListPanel.Visibility = Visibility.Collapsed; break; case BuilderMode.Processing: this.newAlertGrid.Visibility = Visibility.Collapsed; this.visualAlertBuilderWizardControl.Visibility = Visibility.Collapsed; this.scenarioListPanel.Visibility = Visibility.Visible; this.newAlertStatusGrid.Visibility = Visibility.Visible; this.newAlertButton.IsEnabled = false; break; } if (mode == BuilderMode.NewAlert || !isAnyScenario) { this.scenarioListView.SelectedItem = null; this.lifecycleControl.ResetState(clearAll: true); LifecycleStepCollection.First().State = LifecycleStepState.Active; this.visualAlertBuilderWizardControl.StartWizard(); } }