可数范围按降序排列

7 c# linq wpf enumerable

我正在绑定一个组合框enumerable.range(),它工作正常.现在我试图按降序显示结果,我该怎么做?

  cboYearList.ItemsSource = Enumerable.Range( DateTime.Today.Year,1950).ToList().OrderByDescending();
Run Code Online (Sandbox Code Playgroud)

Pie*_*ult 11

您可以Reverse在创建后使用Enumerable.Range以下列表:

cboYearList.ItemsSource = Enumerable.Range(DateTime.Today.Year, 1950).Reverse().ToList();
Run Code Online (Sandbox Code Playgroud)

或者如果你想保留你的OrderByDescending,你需要传递一个键选择器(i => i最后):

cboYearList.ItemsSource = Enumerable.Range( DateTime.Today.Year,1950).OrderByDescending(i => i).ToList();
Run Code Online (Sandbox Code Playgroud)

  • `Reverse()` 的默认实现使用一个中间缓冲区,这可能会导致内存使用不理想。 (2认同)