OnInitialize и OnActivate не вызываются в дочерних моделях представления

Я ожидал, что дочерние модели представления, унаследованные от экрана, будут участвовать в жизненном цикле родительского экрана. Однако, похоже, это не так. Например:

public class ParentViewModel : Screen
{
    public ChildViewModel Child { get; set; }

    public ParentViewModel(ChildViewModel childViewModel)
    {
        this.Child = childViewModel;
    }

    public override void OnInitialize() { // called - as expected }

    public override void OnActivate() { // called - as expected }

    public override void OnDeactivate() { // called - as expected }
}

public class ChildViewModel : Screen
{
    public override void OnInitialize() { // not called - why? }

    public override void OnActivate() { // not called - why? }

    public override void OnDeactivate() { // not called - why? }
}

Возможно ли, чтобы дочерний экран участвовал в жизненном цикле родительского экрана?

12
задан JulianM 25 October 2011 в 05:57
поделиться