/// <summary> /// Gets the schedule part. /// </summary> /// <param name="multiSelectComboBox">The multi select ComboBox.</param> /// <param name="isEveryChecked">If set to <c>true</c> return tuple indicating everything is checked.</param> /// <returns></returns> private static Tuple <IList <int>, bool> GetSchedulePart(MultiSelectComboBox.MultiSelectComboBox multiSelectComboBox, bool isEveryChecked) { if (multiSelectComboBox.AllItemsChecked) { return(new Tuple <IList <int>, bool>(new List <int>(), true)); } else if (multiSelectComboBox.SelectedItems != null) { return(new Tuple <IList <int>, bool>(multiSelectComboBox.SelectedItems.Select(i => (int)i.Value).ToList(), isEveryChecked)); } else { return(new Tuple <IList <int>, bool>(new List <int>(), isEveryChecked)); } }
/// <summary> /// Normalizes the multi selection. /// </summary> /// <param name="multiSelectComboBox">The multi select ComboBox.</param> /// <param name="everyRadioButton">The every RadioButton.</param> /// <param name="atRadioButton">At RadioButton.</param> private void NormalizeMultiSelection(MultiSelectComboBox.MultiSelectComboBox multiSelectComboBox, RadioButton everyRadioButton, RadioButton atRadioButton) { if (multiSelectComboBox.AllItemsChecked) { everyRadioButton.IsChecked = true; } else { if (!multiSelectComboBox.SelectedItems.Any()) { multiSelectComboBox.SetSelectedValue(multiSelectComboBox.ItemsSource.First().Value); } else if (multiSelectComboBox.SelectedItems.Count > 1) { atRadioButton.IsChecked = true; } } }
/// <summary> /// Selects the multi select values. /// </summary> /// <param name="multiSelectComboBox">The multi select ComboBox.</param> /// <param name="description">The description.</param> private static void SelectMultiSelectValues(MultiSelectComboBox.MultiSelectComboBox multiSelectComboBox, DescriptionDirective description) { multiSelectComboBox.SetSelectedValues(description.ExpandedValues.Cast <object>().ToList()); }