問題タブ [mefedmvvm]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - Import は常に null を返しますが、ImportConstructor は機能します
アプリケーションで MEF を使用しようとしていますが、インポートに問題があります。
これは機能せず、UserService は常に null です。
ただし、同じクラスで ImportContstructor を使用すると、完全に機能します。
誰でもこの問題で私を助けてくれますか? 私はすでに何時間も費やしていますが、解決策は見つかりませんでした。ありがとう!!!
mvvm - MEFは、アプリケーションのルートに存在しないアセンブリの依存関係をどのように解決できますか?
私は、win32MFCアプリケーションによって起動されるクラスライブラリになるようにアプリケーションを作成しました。私の各ビューは、ホストされているMFCアプリケーションのサブディレクトリにある基本クラスライブラリとともに配置されている個別のアセンブリです。
私の質問は、ルートディレクトリの代わりにこのサブディレクトリからのアセンブリを使用して、エクスポートされたクラスの依存関係をMEFに解決させるにはどうすればよいですか?
これが私が欲しいものです:
これは私が今持っていなければならないものです:
wpf - MEFedMVVMでウィンドウを閉じる最良の方法
私のアプリケーションには、MEFedMVVMを介してViewModelをインポートするメインウィンドウがあります。
そして今、私はViewModelを実現するViewModelも持っています:
私のViewModelには、ウィンドウを閉じるためのICommandプロパティがあります。クロージングのイベントはどこからでも開催できます。そして、Cinch Framework 2.0の助けを借りて、Executeメソッドを使用したSimplecommandを実現します。
質問
executeメソッドからウィンドウを閉じるにはどうすればよいですか?依存性注入では、コンストラクターを持っていません。イベントを登録したり、ビューをパラメーターとしてビューモデルに指定したりすることはできません。
編集
しかし、私が思う可能性は良くありません:
メソッドでこれを呼び出します
wpf - MEFedMVVM を使用して、親ビュー/ビュー モデル内にビュー モデル ファーストのアプローチを実装する
MEF とMEFedMVVMというサードパーティ ライブラリを使用して WPF アプリケーションを作成しています。
親ビュー モデルが子ビュー モデルのコレクションを持つデザインを作成しようとしています。ビュー モデルをビュー モデルの外側に保持し、コードをより多くのビュー モデルに保つため、ビュー モデル ファーストのアプローチを使用したいと考えています。中心的で、より単体テストが可能です。
ビューに DataTemplate を使用することに関するこのディスカッションとこのディスカッション、および汎用ビューを使用してモデル マッピング リソースを表示するというReed Copsy, Jr の提案を読みました。しかし、実際に機能するものを実装するのに苦労しています。
私の親ビューは非常に単純です:
親ビュー モデルは、IContextAwareを実装する基本型から派生します。
これは子ビュー モデルです。
そして、これには対応するビューがあります:
最初は、 MyChildViewModelのExportViewModel属性に2 番目のブール値パラメーターを指定すると、ビューとビュー モデルがビューの XAML コードで一緒に MEF されるため、ビュー モデル ファーストのアプローチを使用してすべてが機能すると考えていました。しかし、これは事実ではなく、実際にMyParentViewModelコンストラクターでMyChildViewModelオブジェクトをインスタンス化するときにIContextAware.InjectContext()に渡されるのはMyParentViewオブジェクトです。私が期待して望んでいたMyChildViewオブジェクトではありません。明らかに、それらを結び付けるために何かを追加する必要があります。誰かがこれを行う方法の例を提供できますか?
ありがとう!
c# - MEFedMVVM を使用して ViewModel データを取得する
現在、MEFedMVVM フレームワークを使用して ViewModel にアクセスしていますが、現在使用されている別の ViewModel からデータを取得する方法を知りたいです。これは、Cinch の使用と組み合わされています。
現在、私のタブ コントロールは次のように定義されています。
ビューが読み込まれると、メイン ウィンドウの ViewModel は次のようにセットアップされます。
MainWindow ViewModel は、以下のように構成された ViewModelBase クラス (Cinch クラス) を継承します。
今私ができるようにしたいのは、ViewModel を持つ UserControl である loginWorkspace 内のボタン クリックから、LoginViewModel から MainWindow の Views ObservableCollection に Admin タブを追加することです。
wpf - MEFedMVVM の概念を使用してビューモデルからビューにアクセスしますか?
ビューモデルでは、MEFedMVVM
を使用してインスタンス化されますViewModelLocator
。MEFedMVVM
ビューモデルに任意のコンストラクターを使用できるため、非常に強力です。
IMediator
、IContainerStatus
およびIDispatcherService
は、 を通じてインスタンス化されるサービス インターフェイスMEF
です。明らかに、必要に応じて独自のサービスを作成できます。
問題
ビューが読み込まれたら、その子のreadonlyプロパティのメンバーにビューモデルのデータを割り当てる必要があります。理想的には、この変数を に直接バインドしますXAML
が、プロパティは読み取り専用であり、そのメンバーはアタッチ可能なプロパティではないため、それを行うことはできません。現在、私は醜い回避策を持っています:
ビューとビューモデルのこの結合を取り除きたいです。との両方が役立つ可能性のあるさまざまなパターンMEFedMVVM
をPrism
提供しますが、どちらをどのように使用すればよいかわかりません。サービスがビューとビューモデルの両方にアクセスできるようにしても問題ありませんか?
Q: カップリングを取り外すには、どのようなパターンを使用すればよいですか?