2

コードを使用してジオメトリ オブジェクトをキャンバスに追加する必要があります。つまり、ボタンをクリックすると形状が追加されます。キャンバスをパラメーターとして関数に送信し、次に canvas.children.add() を使用しましたが、そのようなものは mvvm のアイデア全体を台無しにしますよね? それを行うより良い方法はありますか?

4

2 に答える 2

-1

いいえ、それを行うより良い方法はありません。

XAML でシェイプを定義すると、同じように Canvas.Children に Add() されます。

クリーンな Mvvm の方法でそれを行いたい場合は、おそらくビューモデルを工夫する必要があります。ボタンに VM ICommand を追加し (接続できるように)、ハンドラーで、ある種のオブジェクトを ObservableCollection に追加し、ビューで何かを実行して、その ViewModel コレクションから形状を作成します。 (xaml または分離コード)

于 2013-04-29T09:34:30.137 に答える