こんにちは、私はViewModelを介して設定されているxmalでグリッドを作成しようとしています。 グリッドは5x5グリッドで、ViewModelには「MyObject」のリストが含まれています。このオブジェクトには2つのint変数が含まれています。行と列のマッチはグリッド内のどこにオブジェクトがあるべきかを示します。 MyObjectもビューモデルです。グリッドスペースには、データテンプレートとしてMyTemplateをDataContextとしてMyObjectで埋めなければなりません。 今、私はxamlとビューモデルにはかなり新しいですが、これを実行する最良の方法は?Xaml Dynamic Grid with Viewmodels
答えて
見てみましょう...
VM、そして...
オプション1へのObservableCollectionを入れて:V.へ
...シンプルなグリッドはそれがXAMLからイベントをて、CollectionChangedだを購読します。各追加されたオブジェクトのContentControlsをグリッドに追加し、ContentControlのGrid.RowプロパティとGrid.Columnプロパティを各オブジェクトのプロパティにバインドし、DataContextをオブジェクト自体に設定し、ContentTemplateをResources ["MyTemplate"]に設定します。 (また、任意の削除されたオブジェクトは、対応するContentControlにを見つけ、それを削除するために。)
プロ:簡単
コン:.csファイル、なしデザイナサポート
オプション2:
... V.へのItemsControlをItemPanelTemplateをGridに設定し、ObservableCollectionをItemsSourceにバインドします。 ItemTemplateをMyTemplateに設定します。ここでは、あなたの値に基づいて、正しいセルに項目を入れることです。そのためには、ItemsControlのItemContainerStyleプロパティを使用し、コンテナのGrid.RowとColumnをそれらのプロパティにバインドします。
プロ:素敵なXAMLと容易に拡張
コン:後者の場合には、あなたは忘れることができますのでItemContainerStyleは、WPFでのトリッキーなとSilverlightで行方不明であること
オプション3:
...カスタムあなたが書いたパネル。グリッドからおそらくそれを継承する。要素が置かれている場合よりも、DataContextがプロパティを含むインタフェースを実装しているかどうかを確認してください。その後 プロ...オプション2にItemsPanelとして
をこれを使用する:あなたはこのために新しいパネルを記述する必要が...
うまくいけば、これらの3の1があなたのためにOKになります。それは完全に
コン動作するはずです。
ありがとう、私はオプション3と一緒に行くと思います。 – Androme
- 1. Dynamic Instrumentation with Clang
- 2. Ember TextField valueBinding with dynamicプロパティ
- 3. ExtJs Grid with JsonStoreのデータがロードされていません
- 4. カスタムDataAnnotationとViewModels
- 5. ViewModelsとIsolatedStorageSettings
- 6. viewmodelsの作成
- 7. サービスロケータのないViewModelsの注入
- 8. WPF "hex grid"コンポーネント
- 9. WPF xamlをSilverlight xamlに変換する
- 10. 動的XAMLメニュー項目と静的XAMLメニュー項目の混在
- 11. オーレリアコンポーネントは、他のviewmodels
- 12. MVCのバディークラスとViewModels?
- 13. MVC3バディークラス、ViewModelsとバリデーション
- 14. Clojure Dynamic Binding
- 15. Silverlightの挿入XAMLは他のXAML
- 16. XAMLページフリップツイスト
- 17. ViewModelsとCanExecuteハンドラを廃棄する
- 18. Gridのイベントをロードする
- 19. Dynamic Mod_Rewrite
- 20. Dynamic NumberOfRowsInSection
- 21. Telerik MVC Grid with Ajax EntityObjectsを使用したバインディングで循環参照例外
- 22. STL std :: map dynamic ordering
- 23. ViewModels間の通信方法
- 24. ObservableObjectまたはViewModelsでINotifyPropertyChanged
- 25. Windows Phone 8 - MVVM ViewModelsとApp.xaml.cs
- 26. MVVM WPF - ViewModelsの使用
- 27. ASP.NET MVCのViewModelsの検証
- 28. WPF MVVM LightユニットのテストViewModels
- 29. MVVM:他のViewModelsの検索
- 30. MVC、ViewModels、およびValidation
あなたはおそらくxmalとxmalを意味しますか? – Rumplin