2

嗨,在我以这种方式实例化我的视图模型后,我在使用 MVVM 模式时遇到了问题:

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

</phone:PhoneApplicationPage.Resources>

我如何知道此页面何时加载?

4

1 回答 1

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 设置为您的视图模型,或者将绑定的源设置为资源中的源。

于 2013-02-25T21:46:28.763 回答