Search code examples
c#.netwpfxamlxceed

Set checked items in CheckComboBox


I'm using the Xceed checkable combobox. I need to set a few items as checked items:

<xctk:CheckComboBox x:Name="cbFileType" DisplayMemberPath="Name" SelectedMemberPath="IsChecked"></xctk:CheckComboBox>

C# code:

public partial class DataSelector : UserControl
    {
        public class BoolStringClass
        {
            public string Name { get; set; }
            public bool IsChecked { get; set; }
        }
        public BackupDataSelector()
        {
            InitializeComponent();            
            cbFileType.Items.Add(new BoolStringClass { Name = ".jpg", IsChecked = true });
            cbFileType.Items.Add(new BoolStringClass { Name = ".bmp", IsChecked = false });
        }
    }

But ".jpg" item is not checked:

my CheckComboBox

How can I set ".jpg" as checked item?


Solution

  • You should add the items to be selected to the SelectedItems collection of the CheckComboBox:

    cbFileType.Items.Add(new BoolStringClass { Name = ".jpg", IsChecked = true });
    cbFileType.Items.Add(new BoolStringClass { Name = ".bmp", IsChecked = false });
    
    foreach (var selectedItem in cbFileType.Items.OfType<BoolStringClass>().Where(x => x.IsChecked))
        cbFileType.SelectedItems.Add(selectedItem);