0

データリストのフィルターにICollectionViewを使用しています。しかし、データをフィルタリングしようとすると、RadListBoxは何も表示しません。これが私がこれのために試みる私のコードです。

XAML:

<Window.Resources>
    <local:MyList x:Key="MyData"/>
    <CollectionViewSource x:Key="MyCollection" Source="{Binding ClassTwos, Source={StaticResource MyData}}"/>
</Window.Resources>

<telerik:RadListBox x:Name="ListTwo" ItemsSource="{Binding Source={StaticResource MyCollection}}" Margin="184,78,0,0"  Width="94" Height="175" DisplayMemberPath="Name"/>

C#:

public class MyList
{
    public ObservableCollection<TestClassTwo> ClassTwos { get; set; }
    public MyList()
    {
        ClassTwos = new ObservableCollection<TestClassTwo>
                                           {
                                               new TestClassTwo{Name = "Sound"},
                                               new TestClassTwo{Name = "Samsung"},
                                               new TestClassTwo{Name = "yahoo"}
                                           };

    }
}

public MainWindow()
    {
        InitializeComponent();

        var collectionView = (this.ListTwo.ItemsSource as ICollectionView);
        if (collectionView != null)
        {
            collectionView.Filter = p => ((TestClassTwo)p).Name == "s";
        }
    }
4

1 に答える 1

0

フィルタに一致するアイテムがないためです(名前はありませんs)。StartsWithを使用するつもりだったと思いContainsます==

于 2012-09-14T12:12:38.463 に答える