C# 为什么RadListBox在数据筛选期间不显示任何内容?
我正在使用ICollectionView筛选我的数据列表。但当我尝试过滤数据时,RadListBox什么也不显示。这是我的代码,我试着这样做 XAML:C# 为什么RadListBox在数据筛选期间不显示任何内容?,c#,.net,wpf,telerik,radlistbox,C#,.net,Wpf,Telerik,Radlistbox,我正在使用ICollectionView筛选我的数据列表。但当我尝试过滤数据时,RadListBox什么也不显示。这是我的代码,我试着这样做 XAML: <Window.Resources> <local:MyList x:Key="MyData"/> <CollectionViewSource x:Key="MyCollection" Source="{Binding ClassTwos, Source={StaticResource MyData
<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#:
公共类MyList
{
公共ObservableCollection ClassTwos{get;set;}
公共MyList()
{
ClassTwos=新的可观测集合
{
新TestClassTwo{Name=“Sound”},
新TestClassTwo{Name=“Samsung”},
新TestClassTwo{Name=“yahoo”}
};
}
}
公共主窗口()
{
初始化组件();
var collectionView=(this.ListTwo.ItemsSource作为ICollectionView);
如果(collectionView!=null)
{
collectionView.Filter=p=>((TestClass2)p).Name==“s”;
}
}
,因为您没有与筛选器匹配的项(没有项被命名为s
)。我假设您打算使用StartsWith
或Contains
而不是=
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";
}
}