私はWPF MVVMを使い始めましたが、ちょっと立ち往生しました。 MVVMとwpfを使用して、同じビューで約100の異なるテーブルを切り替える必要があります。 私はテーブル名のリストを持つツリービューを持っていて、ツリービューの横に正しいDataGridが表示されなければならない項目を選択しました。 テーブルごとにModelクラスとViewModelクラスを作成しました。しかし、バインドする正しいViewModelを選択に応じてどのように選択すればよいですか。wpfを使用して同じビュー上のビューモデルを切り替えるmvvm
1
A
答えて
0
私はあなたの問題を正しく理解していれば、設計に問題があります。ツリービューでBinding
thisを参照してください -
まず はTreeView
SelectedItem
を使用するには、あなたのSelectedItem
得ます。しかし、あなたはコードの背後に悪い方法を行うことができます。
セカンドバインドごSelectedItem
だから、あなたが何をしたいです:ContentControl
またはContentPresenter
のようなものにSelectedItem
をバインド 。あるいは、コードの背後にある悪い方法でやってください。このような例
:あなたは別のDataGrids
をお持ちの場合は
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<TreeView ItemsSource="{Binding MyItemSource}">
<!-- Get the selected item here (watch how to in the linked answer) -->
</TreeView>
<ContentPresenter Grid.Column="1"
Content="{Binding Path=SelectedItem}"
>
<ContentPresenter.ContentTemplate>
<DataTemplate>
<DataGrid>
<!-- Your DatGrids or what ever -->
</DataGrid>
</DataTemplate>
</ContentPresenter.ContentTemplate>
</ContentPresenter>
</Grid>
サード(オプション)あなたは、あまりにもあなたのSelectedItemに応じて、あなたのビューを変更するにはDataTemplateSelectorを使用することができます。この例ではContentPresenter
で使用します。
関連する問題
- 1. WPF MVVMユーザーコントロール間の切り替え
- 2. 同じコントローラを使用してデータを切り替えるAngularJS
- 3. コントローラー内のビューモデルを切り替える
- 4. UISegmentedControlを使用して2つのビューを切り替える
- 5. Prism、MVVM、Unityを使用した切り替えナビゲーションの表示
- 6. プリズムは同じ領域のビュー間で切り替える
- 7. iOS:UINavigationBarControllerを使用してビューを切り替える
- 8. 同じタッチのビューでのジェスチャーの切り替え
- 9. 同じxibファイル内のあるビューから別のビューに切り替える
- 10. wpf mvvmコマンドを使用してビューモデル間でパラメータを渡す
- 11. WPF MVVM - 祖先ビューモデル
- 12. 他のビューの切り替えに切り替えるapp xcode
- 13. WPFの切り替えボタン
- 14. onClickListenerを使用した画像ビューの切り替え画像
- 15. ビュー間の切り替え
- 16. iOS上の「真の」MVC用のビュー切り替えフレームワーク
- 17. 複数のURLを同じタブで切り替えるJavaを使用する
- 18. 戻り値を使用してビュー切り替えを実装する
- 19. アニメーションビュー切り替えwpf
- 20. MVVMとビューモデル通信を使用したWPFウィンドウのモーダルダイアログ
- 21. collapeseを切り替えて閉じる
- 22. WPF同じ場所で2つのコントロールを切り替えます
- 23. 同じウィンドウ内のビューの切り替えページの新規インスタンスを作成せずにWPF
- 24. メニュー項目を切り替えるWPF?
- 25. 関数を使ってビューを切り替える
- 26. 指を使ってビューを切り替える方法は?
- 27. modalViewControllerでビューを切り替える
- 28. ボタンでビューを切り替える
- 29. ビューを切り替える方法
- 30. ViewSwitcherをビュー間で切り替える
コードがどのように見えるかわかっていると助かります。 1つのTreeViewエントリと1つのDataGridに同じViewModelを使用できます。 –
こんにちはMighty、すべて私は現在、INotifyPropertyChangedでモデルモデルとビューモデルクラスを持っています。私はPeterが提案したことを実装しようとしていますが、それでもまだあまり成功していません。 – Vadim