私は、ユーザーがコレクション内のアイテムを作成、変更、および削除できるようにするアプリケーションの開発の初期段階にいます。コレクション内のアイテムには異なるプロパティがあり、アイテムの Type の選択に基づいてそれらのプロパティに入力できます。
問題の例として、いくつかの基本的なクラスとそのプロパティのリストを示します。
タイプは、テキスト、オーディオ、またはビデオのいずれかである必要があります。
テキスト - 名前、タイプ、説明、長さ、作成者
オーディオ - 名前、タイプ、説明、長さ、ファイル形式、トラック番号、アーティスト、アルバムなど
ビデオ - 名前、タイプ、説明、長さ、ファイル形式、トラック番号、アーティストなど
ご覧のとおり、フィールドはそれぞれわずかに異なります。Type を選択すると、ユーザー入力に使用できるプロパティが変更されます。クラスは単なる例であるため、クラスやアプローチにこだわりすぎないでください。ユーザーは、読みやすくするためにデータをグリッドのような形式にすることを要求しています。ほとんどのユーザー データでは、DataGrid のエントリ間で 1 つまたは 2 つの情報のみが変更されるため、プロパティの変更をスキャンして検出する機能が重要です。
これのWPF設計のための最良のアプローチは何ですか?
異なるアイテムを単一のデータグリッドのようなコントロールにキャストできますか?
タイプを選択すると、汎用アイテムを特定のアイテムにキャストできますか?