我已經ObservableCollection
綁定到dataGrid
,現在我想篩選提供的數據我知道我需要使用ICollectionView
,但我不知道如何與我的MVVM
添加模式ICollectionView
。過濾的ObservableCollection與ICollectionView
public class MainViewModel : ViewModelBase , IBarcodeHandler
{
public ObservableCollection<TraceDataItem> TraceItemCollectionViewSource { get; set; }
}
我的XAML
<Window xmlns:controls="clr-namespace:Mentor.Valor.vManage.RepairStation.Controls"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
<DataGrid Grid.Row="2" ColumnWidth="*" ItemsSource="{Binding TraceItemCollectionViewSource , Mode=TwoWay , UpdateSourceTrigger=PropertyChanged}" RowStyle="{StaticResource TraceRowStyle}" IsReadOnly="True" Name="TraceDataGrid" Margin="5,5,5,5" Padding="5,5,5,5" AutoGenerateColumns="False">
</Window>
我如何才能申請濾波的觀點在這裏添加ICollectionView
:
我的代碼如下簡化的外觀?
@NightWalker是的。我更新了我的答案。 – Andrew
所以每次我改變TraceItemCollectionViewSource我需要RaisePropertyChanged TraceItemCollectionView通知用戶界面? –
@NightWalker是的。但是,ObservableCollection的整個觀點是你不需要改變它。 – Andrew