[英]PRISM Silverlight 4 MEF - IActiveAware
我無法讓我的 ViewModel 接收 IActiveAware 通知。
我的視圖通過 View Discovery 注冊到該區域。
_regionManager.RegisterViewWithRegion(
RegionNames.ListRegion, typeof(AlarmListView));
並且 ViewModel 實現了 IActiveAware,但是當視圖變為活動狀態時,它永遠不會被設置。 我錯過了什么?
我的視圖模型是這樣注冊的:
/// <summary>The alarm list view model.</summary>
[Export(typeof(IAlarmListViewModel))]
public class AlarmListViewModel :
AsyncNotificationObject,
IActiveAware,
IAlarmListViewModel { ... }
並像這樣導入到視圖中:
[Import]
public IAlarmListViewModel ViewModel
{
get
{
return (IAlarmListViewModel)DataContext;
}
set
{
DataContext = value;
}
}
我猜只有當您通過_regionManager.RequestNavigate
或_region.Activate(view)
導航到您的視圖時,才會更改IsActive
。 在您的情況下,您可以在view.Loaded
或view.GotFocus
事件上設置IsActive
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.