0

如何将我的组合框填充到我的 ObservableCollectio 项目中?

public ObservableCollection<Contacts> contacts = new ObservableCollection<Contacts>();

联系人中的项目是“Grname”。这些项目需要绑定到它。首选代码,因为我想过滤掉重复项(分组)。

    class Contacts
{
    public string Contact_id { get; set; }
    public string Grname { get; set; }

}

更新:

我找到了 !

ICollectionView contactsView = CollectionViewSource.GetDefaultView(dataGrid1.ItemsSource);

cmbGroup.ItemsSource = contactsView.Groups;

但是如何使用组合框的选定项过滤我的数据网格?

我有:

    void Filter(object sender, FilterEventArgs e)
    {

        if (cmbGroup.ItemsSource == contactsView)
        {
            e.Accepted = true;
        }
        else
        {
    e.Accepted = false;
    }
}

并且过滤器绑定在我的 XAML 中的 CollectionViewSource 中

4

1 回答 1

0

对于过滤、分组、排序等,您可以使用CollectionViewSource。这意味着类似

ICollectionView contactsView = CollectionViewSource.GetDefaultView(contacts);
// For filtering:
contactsView.Filter += sender => {
    // Filter logic here
    return true;
}

然后将您的组合框与contactsView 绑定。

于 2013-01-03T11:57:24.180 回答