wpf過濾
發布時間: 2021-01-28 02:16:18
① WPF Datagrid控制項如何得到過濾之後的數據
直接foreach遍歷你的ICollectionView即可
ICollectionView的GetEnumerator返回的遍歷器遍歷的就是filter以後的結果,SourceCollection屬性才會返回原始數據
比如,界面上:
<DockPanel>
<ButtonClick="Button_Click"
Content="ShowItems"
DockPanel.Dock="Top"/>
<ListBoxItemsSource="{Binding}"/>
</DockPanel>
後台代碼:
publicpartialclassMainWindow:Window
{
_dataSource;
publicMainWindow()
{
InitializeComponent();
_dataSource=newCollectionView(Enumerable.Range(0,10));
//只顯示偶數
_dataSource.Filter=(i=>(int)i%2==0);
this.DataContext=_dataSource;
}
privatevoidButton_Click(objectsender,RoutedEventArgse)
{
varmsg=string.Join(",",_dataSource.OfType<int>());
MessageBox.Show("Itemsare: "+msg);
}
}
點按鈕以後的結果:
熱點內容