2013-02-25 52 views
2

嗨的负载情况下,我使用MVVM模式后,我实例化了我这样的视图模型的一个问题:窗口Phone 7和MVVM,页面

<phone:PhoneApplicationPage.Resources> 
    <local:DetailVM x:Key="DetailVM"/> 

</phone:PhoneApplicationPage.Resources> 

我怎么知道什么时候该页面加载?

+0

你的意思是“知道当我的ViewModel加载页面”? – Patrick 2013-02-25 21:40:09

回答

1

您可以使用Blend SDK并在视图模型中添加一个触发命令的事件触发器。

包括

xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" 

在你的xmlns包括,然后添加一个触发器为Loaded事件。

<i:Interaction.Triggers> 
    <i:EventTrigger EventName="Loaded"> 
     <i:InvokeCommandAction Command="{Binding LoadCommand}" /> 
    </i:EventTrigger> 
</i:Interaction.Triggers> 

LoadCommand的仅仅是一个返回ICommand的性质。您当然应该将页面的DataContext设置为您的视图模型,或者将绑定的源设置为资源中的一个。