Domanda

I am using ICollectionView for filters my data list. But when i try to filtering data then RadListBox shows nothing. Here is my Code which i try for this.

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";
        }
    }
È stato utile?

Soluzione

Because you've got no item that matches your filter (none is named s). I assume you meant to use StartsWith or Contains rather than ==.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top