private static void OnBindingItemsChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { var comboBox = d as PUComboBox; var items = comboBox.BindingItems; if (items == null) { return; } comboBox.Items.Clear(); foreach (var item in items) { var comboBoxItem = new PUComboBoxItem() { Content = item.Header, Value = item.Value, DeleteButtonVisibility = item.CanDelete ? Visibility.Visible : Visibility.Collapsed, }; if (comboBox.Items.Count == 0) { comboBoxItem.IsSelected = true; } comboBox.Items.Add(comboBoxItem); } }
private static void OnBindingItemsChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { var comboBox = d as PUComboBox; var items = comboBox.BindingItems; if (items == null) { return; } comboBox.Items.Clear(); foreach (var item in items) { var comboBoxItem = new PUComboBoxItem() { Content = item.Header, Value = item.Value, IsDeleteButtonShow = item.CanDelete, }; if (item.CoverBrush != null) { comboBoxItem.CoverBrush = item.CoverBrush; } if (item.SelectedBrush != null) { comboBoxItem.SelectedBrush = item.SelectedBrush; } comboBoxItem.Selected += delegate { if (comboBox.SelectedValuePath == SelectedValuePaths.Header) { comboBox.SelectedValue = comboBoxItem.Content.ToString(); } else { comboBox.SelectedValue = comboBoxItem.Value; } }; if (comboBox.Items.Count == 0) { comboBoxItem.IsSelected = true; } comboBox.Items.Add(comboBoxItem); } }
private PUComboBoxItem GenerateComboBoxItem(PUComboBoxItemModel model) { var comboBoxItem = new PUComboBoxItem() { Uid = model.Uid, Content = model.Header, Value = model.Value, CanDelete = model.CanDelete, }; model.PropertyChanged += delegate { comboBoxItem.Content = model.Header; comboBoxItem.Value = model.Value; comboBoxItem.CanDelete = model.CanDelete; }; return(comboBoxItem); }
private PUComboBoxItem GenerateComboBoxItem(PUComboBoxItemModel model) { var comboBoxItem = new PUComboBoxItem() { Content = model.Header, Value = model.Value, DeleteButtonVisibility = model.CanDelete ? Visibility.Visible : Visibility.Hidden, }; if (Items.Count == 0) { comboBoxItem.IsSelected = true; } model.PropertyChanged += delegate { comboBoxItem.Content = model.Header; comboBoxItem.Value = model.Value; comboBoxItem.DeleteButtonVisibility = model.CanDelete ? Visibility.Visible : Visibility.Hidden; }; return(comboBoxItem); }
internal void OnDeleteItem(PUComboBoxItem oldItem, PUComboBoxItem newItem) { RoutedPropertyChangedEventArgs <PUComboBoxItem> arg = new RoutedPropertyChangedEventArgs <PUComboBoxItem>(oldItem, newItem, DeleteItemEvent); RaiseEvent(arg); }