Unity를 시험해보고 XAML에서 내 viewmodel을 선언하는 데 문제가 있습니다. 너 나 좀 도와 줄 수있어? XAML :XAML에서 생성자 삽입을 사용하여 ViewModel 선언
<UserControl.DataContext>
<search:SearchBoxViewModel />
</UserControl.DataContext>
생성자 :
[ImportingConstructor]
public SearchBoxViewModel(IRegionManager regionManager, IEventAggregator eventAggregator)
{
this.regionManager = regionManager;
this.eventAggregator = eventAggregator;
}
내가이 resolutionfailedexception을 얻을 실행하려고
. 뷰 모델에 빈 생성자가있는 경우이 기능이 작동합니다. 마치 생성자 삽입에 문제가있는 것처럼 보입니다.나는이 같은 모듈을로드하는 경우 :
var searchView = Container.Resolve<SearchBoxView>();
searchView.DataContext = Container.Resolve<SearchBoxViewModel>();
//RegionManager.RegisterViewWithRegion(RegionNames.SearchRegion, typeof(SearchBoxView));
RegionManager.Regions[RegionNames.SearchRegion].Add(searchView);
의미가 있습니다.
xaml에서이 작업을 수행 할 수 있습니까? (개인적으로 생각하면 좋을까요?)
그건 그렇고 : 주로 웹 서비스와 통신하는 wpf로 애플리케이션을 만들고 있습니다. 오히려 사용자에게 단결 또는 MEF를 적용해야하며이 둘의 큰 차이점은 무엇입니까?
감사합니다, Raphi
네 나는 그것이 정상적으로 작동하지 않을 것이라는 것을 알았다. 아마도 프리즘 개발자는 이것을 구현했을 가능성이있는 편리한 해킹을 가지고 있다고 생각했습니다. 너무 나빴어. 그러나 당신의 해결책은 여전히 나의 것보다 낫습니다. 감사! – raphi011
@ raphi011 사실, 내가 올바르게 기억한다면 그것은 내 해결책이 아니야, 나는 프리즘 책에서 그것을 훔쳤다. :) – chopikadze