扩展的WPF工具包 - CheckComboBox

时间:2013-08-05 12:01:59

标签: wpf wpf-controls wpftoolkit

是否有人知道在CheckComboBox for WPFToolkit中的复选框上手动启用(打开勾号)的方法?

不幸的是,组合框中的项目都是字符串。

勾选“全选”复选框后,我正尝试启用所有标记。

3 个答案:

答案 0 :(得分:2)

这是一个相当晚的回复,但我认为最好发布这个以防万一。我在WPFToolkit版本中使用了以下方法:

public class Descriptor : INotifyPropertyChanged
{
    private bool isSelected;

    public bool IsSelected
    {
        get
        {
            return this.isSelected;
        }
        set
        {
            if (this.isSelected != value)
            {
                this.isSelected = value;
                // Raise INotifyPropertyChanged
            }
        }
    }

    public string Name { get; set; }
}

创建这些集合,然后将它们分配给CheckComboBox的ItemsSource。

要处理全部选择,我们有一个标签为""作为集合中的第一个项目,如果勾选此项目,则取消选择所有项目,并且所有案例都在引擎盖下处理。要处理选择Changed,它确实涉及向Descriptor类添加一个事件,并在每次更改IsSelected属性时触发它。

答案 1 :(得分:0)

我最终抛弃了Extended WPFToolkit,因为它无法直接访问复选框。

相反,我创建了一个ComboBox,并在其中手动定义了Checkbox,我可以直接通过名称访问,并且能够通过使用[Checked / Unchecked [event,并使用ComboBox SelectionChanged显示一个]来实现“Select All”默认值,表示以CSV格式选择的内容。

也许是笨重的,但它完成了工作。

PS。我甚至不需要为ComboBox

使用DataTemplate

答案 2 :(得分:0)

代码背后的一种方式是

var ComboSelector = MyCheckComboBox as  Xceed.Wpf.Toolkit.Primitives.Selector;
foreach(var item in MyCheckComboBox.Items)
ComboSelector.SelectedItems.Add(item);
相关问题