2016-05-14 4 views
0

まずMVVMパターンとC#/ XAML開発の初心者です。不便をおかけして申し訳ありません。tabcontrolのデータのバインド

したがって、ボタン、タブコントロール、およびバインディングとコマンドを使用してすべてを正しく収集するための完全なアプリケーションを作成することが目的です。

各ボタンは、独自の情報(名前、ID、シリアル番号など)を持つ特定のオブジェクトを表します。これらのボタンはすべて、ウィンドウの上部にある特定のビューで表示されます。このウィンドウの一番下には、押されたボタンに関連付けられたいくつかの項目と内容を含むテーブルを表示する必要があります。

ここに問題があります。私はテーブル内のクリックされたオブジェクトの情報を表示する必要があります、そして、内容はすべてのtabitemsのために変えることができます。もう1つのことは、特に1つのボタンが押されると、テーブルのビューが完全に変化し、他の情報を表示することである。

私の質問は以下のとおりです。

  • は、私は私のボタン/オブジェクトとそれに関連付けられたビューモデルのそれぞれに対して一つのモデルを作成する必要がありますか?

  • すべてのボタンを含むビューはテーブルから分離したビューにすることができ、両方がMainViewに表示されますか?

  • スクロールビューアのようにテーブル内のデータを表現できますか、それをクリックするとモデルから新しい情報を追加できますか?私は私の説明はので、ここでhelporに十分であると思います

は異なる文脈を示す私のアプリケーションの概略図です。 enter image description here enter image description here

ご協力いただきありがとうございます。

答えて

0
  • 私は私のボタン/オブジェクトとそれに関連付けられたビューモデルのそれぞれに対して一つのモデルを作成する必要がありますか?

両方の方法があります。 modelが異なるAPIと通信していて、異なるcontractを使用する必要がある場合は、別のmodelsを使用してください。それ以外の場合は、1つを使用することをお勧めしますViewModelについては、あなたにもそれは両方の方法で行うことができます。私は分離を提案していますが、問題の時点​​では、アプリケーション自体のサイズに関する情報が見つかりませんでした。したがって、サイズとセググラゲーションに依存します。

  • すべてのボタンを含むビューは、テーブルから分離ビューすることができ、それらの両方は、MAINVIEWになりますか?

すべてのビューが同じビューになるように、依然としてルートビューが必要です。 TabWindowsのそれぞれに対して新しいUserControlを作成し、ボタンのコマンドに応じてvisibleにするだけでcollapseにすることをお勧めします。

  • 私は、ScrollViewerのようなテーブル内のデータを表し、それはとき
    クリックして上のモデルから、他の情報WIH新しい行を追加することが可能
    であることはできますか?

あなたはTabControltabsのそれぞれにScrollViewerを追加することができます。私はそれの後半部分で何が問題なのかよく分かりませんが、ObservableCollectionItemsSourceを使ってデータテーブルに項目を動的に追加することをお勧めします。

MVVMパターンとそのアプリケーションの詳細については、hereを参照してください。

関連する問題