プレーヤークラスのリスト(アメリカンフットボールのプレーヤーの統計を表す)をGridViewにバインドしたいと思います。私がこれらのプレーヤーを表現する方法(モデルレベルで、モデルビューでこれを変更できる)は、私に多くの問題を引き起こします。
class Player
{
public string Name { get; set; }
public List<Statistic> Statistics { get; set; }
}
class Statistic
{
public string ShortName { get; set; }
public double Value { get; set; }
public StatisticCategory Category { get; set; }
}
enum StatisticCategory
{
Offense,
Defense
}
これらのプレーヤーのリストを、列順に並べ替えることができるビューにバインドしたいと思います。列の場合、次のことを行います。コンボボックスの値を取得し、それをStatisticCategoryオブジェクトに変換してから、すべてのプレーヤーの同じカテゴリ(もちろん、それぞれ1回のみ)のすべての統計を選択します。これらの列にバインドされるデータは、統計の値である必要があります(プレーヤーが指定された統計を持っている場合)。そうでない場合は、データの不足を表す文字「-」または同様のものです。
私はオンラインチュートリアルを使用して多くのオプションを検討しましたが、この種のバインディングをカバーしているものはないようです。これが可能かどうかさえわかりません。
たぶん、私のデータの他の表現を検討する必要があります。それに関する提案があれば、それもありがたいです。