public void Init(AppDataModel dm, Race race) { _dm = dm; _race = race; _race.RunsChanged += OnRaceRunsChanged; UiUtilities.FillCmbRaceRun(cmbRaceRun, _race); UiUtilities.FillGrouping(cmbResultGrouping, _currentRaceRun.GetResultViewProvider().ActiveGrouping); cmbFilter.Items.Clear(); cmbFilter.Items.Add(new CBItem { Text = "alle Teilnehmer", Value = "all" }); cmbFilter.Items.Add(new CBItem { Text = "Teilnehmer ohne Zeit", Value = "no_time" }); cmbFilter.Items.Add(new CBItem { Text = "ausgeschiedene Teilnehmer", Value = "out" }); cmbFilter.Items.Add(new CBItem { Text = "offene Teilnehmer (keine Zeit oder Ausscheidung)", Value = "no_data" }); cmbFilter.SelectedIndex = 1; cmbDisqualify.ItemsSource = ListOfResultCodesToSet; cmbDisqualifyReason.Items.Add("Vorbei am Tor"); cmbDisqualifyReason.Items.Add("Eingefädelt am Tor"); cmbDisqualifyReason.Items.Add("Nicht weit genug zurückgestiegen am Tor"); cmbDisqualifyReason.Items.Add("Hilfe durch fremde Person am Tor"); this.KeyDown += new KeyEventHandler(Timing_KeyDown); }
private void connectUiToRaceRun(RaceRun raceRun) { if (raceRun != null) { if (_viewDisqualifications == null) { _viewDisqualifications = new CollectionViewSource(); _viewDisqualifications.LiveFilteringProperties.Add(nameof(RunResult.Runtime)); _viewDisqualifications.LiveFilteringProperties.Add(nameof(RunResult.ResultCode)); _viewDisqualifications.IsLiveFilteringRequested = true; } _disqualificationsVM = new DiqualifyVM(raceRun); _viewDisqualifications.Source = _disqualificationsVM.GetGridView(); dgDisqualifications.ItemsSource = _viewDisqualifications.View; dgResults.ItemsSource = raceRun.GetResultViewProvider().GetView(); cmbResultGrouping.SelectCBItem(raceRun.GetResultViewProvider().ActiveGrouping); } else { _disqualificationsVM = null; dgDisqualifications.ItemsSource = null; dgResults.ItemsSource = null; } }