0

バックグラウンド

非常に複雑になった Silverlight ページに取り組んでいます。その 650 行には、4 つのグリッド ビュー、タブ コントロールなどがあります。MVVM パターンに従っていることにも注意してください。それが重要な場合、これはSilverlight 5です。

このページは、4 つのコントロールを持つメイン ページに分割するのに適しているようです。コントロールが他のページで再利用されることはないと思います。

利点の 1 つは、すべてのインデントを使用すると、xaml を操作するのが少し面倒になることです。2 番目の利点は、コントロールが分割されていれば、理解が容易になるという私の考えです。

質問

xaml を別々のコントロールに分割する場合、ViewModel も分割する必要がありますか? 同じ理由で、ビュー モデルの複雑さが軽減され、操作するコントロールだけのコンテキストで理解しやすくなります。

コントロールの分割に潜在的な問題はありますか? 何らかの理由で、あるコントロールのチェックボックスが別のコントロールの動作に影響を与える必要がある場合、おそらくバインディングの問題でしょうか? しかし、これは、さまざまなビュー モデルに相互参照を持たせることで解決できるでしょうか?

4

1 に答える 1

2

はい、ページを個別のコントロールに分割する必要があり、そうするコストが現在のモデルによって作成されるメンテナンスの問題のコストよりも少ない場合は、ビューモデルを分割する必要があります。

これが提示する課題のほとんどは、すべての子ビューモデルへの参照を含み、それらの間の関係を管理するメイン ビューモデルを持つことで対処できます。

于 2012-04-17T16:17:41.827 に答える