WPF:MVVM为devExpress控件创建自定义依赖项属性

时间:2013-10-30 21:48:07

标签: c# wpf xaml mvvm devexpress

我知道您可以为wpf控件创建自定义控件和依赖项属性,例如expained http://msdn.microsoft.com/en-us/library/ms753358.aspx,我想知道您是否可以以相同的方式为devExpress控件创建自定义依赖项属性?怎么样?

无法在comboxBoxEdit控件中绑定多个项目。我想在ComboBoxEdit上创建一个名为SelectedItems的依赖项属性。

我已经在普通的ComboBox上创建了一个名为SelectedEnumeration的自定义属性,它将directy绑定到枚举并获取值。无需使用ObjectDataProvider。

1 个答案:

答案 0 :(得分:0)

  

无法在comboxBoxEdit控件中绑定多个项目。

错误。查看DevExpress.Xpf.Editors.CheckedComboBoxStyleSettings

基本上,您可以将ComboBoxEdit.EditValue绑定到一个集合,该集合将填充所选项目。

<dxe:ComboBoxEdit ItemsSource="{Binding MyItems}"
                  EditValue="{Binding SelectedItems}">
    <dxe:ComboBoxEdit.StyleSettings>
        <dxe:CheckedComboBoxStyleSettings />
    </dxe:ComboBoxEdit.StyleSettings>
</dxe:ComboBoxEdit>

视图模型:

public class SomeViewModel
{
    public ObservableCollection<MyClass> MyItems {get;set;}

    public ObservableCollection<MyClass> SelectedItems {get;set;}
}

  

我已经在正常的ComboBox上创建了一个自定义属性   SelectedEnumeration,它直接绑定到枚举并获取   值。无需使用ObjectDataProvider。

你对UI不承担任何责任。创建一个合适的ViewModel并让ViewModel处理您的数据,以便它可以促进对UI的常规DataBinding。不要求助于反射和其他类型的不受欢迎的黑客攻击,以便将逻辑放在错误的层中。