2010-11-23 22 views
0

I持って私の溶液中での次のプロジェクト/アセンブリ:WPFデータバインディング:ソリューション内のプロジェクトとクラスを整理する方法

  1. エンティティ。 2つのクラス:AccountAccountDetailを含むクラスライブラリです。 Accountクラスは、タイプObservableCollection<AccountDetail>である詳細のプロパティを持ち、私はそれを使用してアカウントオブジェクトの詳細を保存します。
  2. コア; 1つのクラス(AccountController)を含むクラスライブラリです。その目的は、Sql Serverからデータを取得し、Accountオブジェクト(その中のAccountDetailコレクションと一緒に)に移入することです。
  3. gui; AccountsWindowという名前の1つのWPFフォームを含むWPFアプリケーションプロジェクトです。その目的は、SQL Serverから取得したすべてのアカウントの一覧を提示することです。
  4. Gui.Controller;これは、CoreアセンブリからのAccountControllerGuiアセンブリからのAccountsWindowとの間の「ブリッジ」であり、データバインディングを支援する1つのクラス:AccountWindowControllerを含むクラスライブラリです。 (私はすべてで、このアセンブリが必要かどうかを確認していない。)
  5. ここ

は、私が何をしたいものです:私はCoreアセンブリからAccountControllerクラスを使用してSQL Serverからすべてのアカウントを取得したい

をし、それらをいくつかのリストに入れる。次に、リストボックスをAccountWindowのリストボックスにデータバインドしたいと思います。

私の質問:私はどこか別の場所AccountWindowControllerまたは で、アカウントのリストを置かなければならない

  1. リストのタイプはObservableCollectionであるべきですか?
  2. 私はそのアカウントのリストがまったく必要ですか?
  3. データバインディングの場合、Gui.Controllerまたは EntitiesクラスからWindow.Resourceを作成する必要がありますか?

私はこれが多くのテキストを読んでいることを知っていますが、私の質問は本当に簡単です。私はWPFの初心者であり、どんな助けでも大歓迎です。ありがとう!

更新日:私の苦しみは継続されますhere。乾杯!

答えて

0

Guiがクライアントになり、他の3つのアセンブリを参照するようです。 Gui.ControllerはCoreとDataEntitiesを参照し、CoreはDataEntitiesのみを参照します。

AccountControllerはリストをフェッチしてGui.Controllerに返します。リストがObservableCollectionの場合は問題ありません。 GuiからGui.Controllerのプロパティにアクセスできるかどうかによって、リスト自体はGuiまたはGui.Controllerに配置する必要があります。 Guiに配置されるウィンドウにListBoxを配置するときは、ListBoxをコレクションにバインドする必要があります。コレクションはWindowのプロパティにすることができます。または、Gui.Controllerに含めることができるメソッドにバインドすることもできます。それは本当にあなたがそれをどのように整理したいかにかかっています。

+0

トミスラフ、ありがとうございました。 Gui.Controllerに取得されたアカウントのリストが格納されています。あなたはGui.Controllerの一部であるメソッドにリストボックスをバインドするための代替案を少し詳しく教えてください。ダミーの例や疑似コードを使って説明できれば素晴らしいでしょう。再度、あなたの答えに感謝します。 – Boris

関連する問題