2

オブジェクト モデルに基づいて、キャンバス上にさまざまな線やその他の 2D オブジェクトを描画する、大まかな非 MVVM デモを Silverlight で作成しました。

現在、アプリケーションを MVVM (Caliburn Micro) に移植しており、現在、ViewModel にオブジェクトがあり、View のキャンバスにそれらを描画する必要があります。

この場合、MVVM はジョブにとって不適切なツールですか?

2D 描画コードはどこに貼り付ければよいですか?

ビューのコード ビハインドで?

私の状況についてさらに情報が必要な場合はお知らせください。ありがとう!

4

1 に答える 1

3

このような状況では、Canvas をカスタムの独立したコントロールとして個人的に扱います。

理想的には、「オブジェクト」の依存関係プロパティを持つコントロール (おそらく UserControl) にする必要があります。このコントロールのユーザーは、オブジェクトを (親コントロールの) ViewModel 内のコレクションにバインドし、これをビューの一部として扱います。

そのため、100% ビューなので、コードは任意の方法で実装できます。完全に「ビュー」であるため、MVVM の範囲外です。

于 2011-01-13T19:01:40.737 に答える