私のデータモデルは次のようなものです。
public class ModelA
{
public int ModelId{get;set;}
}
public class ModelB
{
public IEnumerable<ModelA> ChildObjects{get;set;}
}
Xamlでは、ItemSourceをList()として使用してDataGridを使用しており、ChildObjectsから最初の要素を取得してそのオブジェクトのModelIdとして値を返すコンバーターを使用して、ChildObjectsにバインドするテンプレート列があります。これで、これまですべて正常に動作します。問題は、このテンプレート化された列で並べ替えを行うときです。
回避策の1つは、コンバーターが実行していることを実行する追加のプロパティをModelBに設定し、その新しいプロパティ名としてxamlのsortmemberpathを作成することですが、それはモデルに対して私が望んでいることではありません。
SortMemberPathは単なる定数のように式として作成できないため、このシナリオを処理する他の完璧な方法はありますか。