2016-12-20 22 views
0

我想對DataGrid中的屬性進行排序(降序)。無論出於何種原因,下面的代碼都會產生黑色背景。帶DataGrid的CollectionViewSource生成BLACK控件

<CollectionViewSource x:Key="SortedStations" Source="{Binding Stations}"> 
    <CollectionViewSource.SortDescriptions> 
     <componentModel:SortDescription PropertyName="StationNumber" Direction="Descending"/> 
    </CollectionViewSource.SortDescriptions> 
</CollectionViewSource> 

<DataGrid ItemsSource="{Binding ., Source={StaticResource SortedStations}}"/> 

有沒有辦法,我失去了一些東西?

*編輯*

視圖模型代碼:

public class StationsViewModel 
{ 
    public IList<IStation> Stations { get; set; } 

    public StationsViewModel() 
    { 
     Stations = new BindingList<IStation>(); 
     Stations.Add(new Station() { StationNumber = 10 }; 
     Stations.Add(new Station() { StationNumber = 2 }; 
     Stations.Add(new Station() { StationNumber = 7 }; 
    } 
} 
+0

看起來像不正確的綁定。嘗試:ItemsSource =「{綁定源= {StaticResource SortedStations}}」 –

+0

@YuriTceretian產生相同的結果。 =/ – Puzzled

+0

你如何將你的viewmodel綁定到Window.dataContext?你有沒有嘗試運行一些WPF應用程序?也許這是因爲視頻適配器(驅動程序)。 –

回答

0

我已經找到了解決方案,顯然DataGrid中沒有發揮好與BindingList。我已更改爲ObservableCollection,並按預期工作!