Collection of utilities, helper classes and WPF controls

Creating the Flag Enum Bound ComboBox in WPF using xToolkit

This WPF control allows binding the fields of the flag enumeration to the multi-selection combo box.

Enumeration bound to combo box items
Enumeration bound to combo box items

Create flag enumeration with fields to be bound to the combo box

public enum FlagEnumSample_e
    None = 0,
    [EnumDisplayName("Field 1")]
    Field1 = 1,
    [Description("Second Field")]
    Field2 = 2,
    Field3 = 4,
    Field2AndField3 = Field2 | Field3,
    Field4 = 8

Default value assigned to title is enumeration name. To assign the custom title inherit DisplayNameAttribute

public class EnumDisplayNameAttribute : DisplayNameAttribute 
    public EnumDisplayNameAttribute(string dispName) : base(dispName) 

Bind the View Model property in the XAML to the Value dependency property.

public class FlagEnumComboBoxControlVM
    public FlagEnumSample_e EnumPrp { get; set; }

<UserControl x:Class="Wpf.Docs.EnumComboBoxControl"
        <ctrls:FlagEnumComboBox Value="{Binding Path=EnumPrp}"/>

Control supports joined values as well as none (0) value. These items will be assigned with blue and gray colors correspondingly.

Powered by Docify