0

私が抱えている Silverlight の問題について誰かが私にガイダンスを与えることができるかどうか疑問に思っていますか?

私が今行っていることは、MVVM パターンを使用して Silverlight でページを作成し、データを取得して表示することです。マイページは、データグリッドを使用してデータを表示およびフィルタリングする標準の「リスト」タイプのページになります。

私がやりたいことは、ユーザーがこのリスト ページの編集ボタンをクリックした場合、データ フォームにバインドする同じデータ コレクションにバインドするデータフォームを含む詳細ページに移動することです。リストページのデータグリッド。私が考えているのは、リスト ビューモデルが詳細ページを作成し、詳細ページのデータ コンテキストをそれ自体 (リスト ビューモデルのインスタンス) に設定する必要があるということです。ビューを作成し、そこに移動して、ビューモデルへの参照を渡す方法がわかりません。

コレクションを取得する詳細ページが必要な理由を疑問に思われるかもしれません。これは、ユーザーが現在のアクセス アプリケーションで使い慣れている動作をシミュレートできるようにするためです。ほとんどの場合、ユーザーがリスト ビューをフィルター処理するときに、詳細ページを繰り返し開いたり閉じたりすることなく、フィルターからの結果をナビゲートおよび編集できるページに入ることができるので便利です。

4

1 に答える 1

1

MVVM はこれに適しています。データは同じであり、両方の場所のデータを一度に自動的に更新できるため、両方が同じビュー モデルを共有していると想定するのは正しいことです。

ただし、ビューモデルを取得してビューを作成することは避けます。これは、ビューモデルからビューへの結合を作成し、後で問題を引き起こす可能性があるため、MVVM を実装するための間違った方法と見なされることがよくあります。

サンプル コードを使用したソリューションは、このブログ投稿で説明されています。

于 2011-04-11T10:47:00.927 に答える