2012-03-13 9 views
0

私は4つのエンティティカスタマー、製品、注文、注文の詳細を持っています。私のWPFウィンドウには、顧客名を示す顧客リストボックスがあり、顧客の選択によって、私のウィンドウ内にある注文リストボックスにデータを入力したいと考えています。WPF MVVMとEntityフレームワークでマスターディテールの実装を行うにはどうすればいいですか

私はMVVMを使用しているので、顧客と注文の2つのビューモデルが必要です。私は顧客に注文ビューモデルを渡して、注文ビューに入力できるようにする必要があります。

選択した顧客をオーダービューモデルに渡す方法を教えてください。私は顧客に選択されたアイテムという名前のプロパティを持っていますが、私はまだ私の注文ビューモデルでそれを取得する必要はありません。

更新:

@Craig Trombly私は私の注文エンティティののObservableCollectionを作成し、XAMLでに結合された私のビューモデルのプロパティを持っています。私は、顧客が選択した注文リストボックスのようなマスターの詳細な動作を実装しています。そのためには、私は顧客ビューモデルでプロパティを持つ必要があり、私はcustomerView XamlのリストボックスのselectedItemにそのプロパティをバインドしています。私はselectedItemとしてそのプロパティの名前を付けました。しかし、いつでも私はその選択された項目プロパティにアクセスしようとしています。それは動作していません。私が間違っていることを教えてもらえますか?私の顧客ビューモデルのselectedItemプロパティは、顧客ビューのリストで新しい項目を選択するたびに設定する必要があります。どちらもやっていない。

+0

私はこのビューのxamlを見る必要があります。小さなモジュールですべてがありますか?あなたは必要以上にそれを壊した可能性があります。プロジェクトを投稿してもいいですか? –

+0

私のメールアドレスは私のプロフィールに記載されています。あなたが私にメールしてくれれば、これで話したいかもしれません、私は# –

+0

@Craig Tromblyにありがとうございました。私はそれを行います。私が現在取り組んでいるプロジェクトは、別のデータベースを使用しています。私は、OMSデータベースを持つ別のプロジェクトを作成し、あなたにプロジェクトをメールします。 – IamaC

答えて

1

enter image description here ViewModelはビュー(xaml & cs)に関連付けられていますが、データの周りにはありません。例えば

、MainWindow.xaml & CSはあなたのビューに1つのViewModelを使用MainWindowViewModel.cs

を持つ必要があります。あなたのデータにエンティティフレームワークを使用することをお勧めします。

+0

私のデータにエンティティフレームワークを使用しています。したがって、私は明示的なモデルを持っていません。しかし、私のlinq toエンティティクエリは私のcustomerviewModelにあります。これは間違っていますか? – IamaC

+0

あなたのデータの周りにViewModelを作成していると思います。 Model-View-ViewModelは、データモデルとは別のパターンです。エンティティフレームワークはプロジェクト全体からアクセスできます。カスタム関数(Linq)を実行する必要がある場合は、プロジェクトにdatabase.csファイルを追加し、ViewModelでそのファイルを使用します。 –

+0

多くの情報に感謝します。私はあなたが説明した方法を実装します。 – IamaC

関連する問題