0

これは簡単だと思いますが、これを行う方法がわかりません。

個人のリストが 2 つあります

List<Person> specificPersons
List<Person> allPersons

linq を使用して、次のような 2 つの完全なリストからグループを作成したいと思います。

IEnumerable<IGrouping<string, Person>> personsGroups

文字列は任意のカスタム文字列になります。へのバインディングをListView使用して、Windows 8.1 Metro アプリケーションでグループ ヘッダーで区切られた両方のリストを表示するためにこれを使用します。CollectionViewSourceIEnumerable

4

2 に答える 2

0

グループ プロパティを Person に追加することをお勧めします。これは、各リストで単純なループを介して設定できます。次に、これを行うことができます:

IEnumerable<IGrouping<string, Person>> personsGroups = specificPersons.Concat(allPersons).GroupBy(p => p.Group);

Person がドメイン エンティティであるか、データベースに存在する場合、これは意味をなさないことに注意してください。これらのグループは表示用であるため、ビュー モデル (PersonViewModel など) を使用し、そのモデルに Group プロパティを追加して、ドメイン モデルを変更しないようにします。

于 2014-02-12T17:48:44.837 に答える