Start()方法中的ShowViewModel

时间:2014-09-03 13:43:22

标签: c# mvvmcross windows-phone-8.1

我使用Mvvmcross作为我的通用应用程序(Windows 8.1,Windows Phone 8.1)。 我有一个问题:

//Code in Portable Class Library (Core) for wpf, windows 8.1, windows phone 8.1 

public async override void Start()
{
  ShowViewModel<TasklistViewModel>();
}

在Windows手机中,它不会转到新页面,在调试中没有任何错误消息。 在Windows 8.1中都可以。

如果我有一个按钮命令并单击我自己,它就可以工作。

//Code in Portable Class Library (Core) for wpf, windows 8.1, windows phone 8.1 

private MvxCommand _showTasklistViewCommand;

public MvxCommand ShowTasklistViewCommand
{
    get
    {
        _showTasklistViewCommand = _showTasklistViewCommand ?? new MvxCommand(async () => await DoShowTasklistViewCommand());
        return _showTasklistViewCommand;
    }
}

private async Task DoShowTasklistViewCommand()
{
    ShowViewModel<TasklistViewModel>();
}

我需要在没有用户点击的情况下运行ShowViewModel。


1)我需要在我的视图中执行此操作吗?

public new FirstViewModel ViewModel
{
    get { return (FirstViewModel)base.ViewModel; }
    set { base.ViewModel = value; }
}

public FirstView()
{
    this.InitializeComponent();

    this.Loaded += async (o, args) => await FirstView_Loaded(o, args);
}

async Task FirstView_Loaded(object sender, Windows.UI.Xaml.RoutedEventArgs e)
{
    await ViewModel.DoShowTasklistViewCommand();
}

2)我需要在我的设置中初始化我的trigers(on,off),show / unshow按钮(它们从dics或internet加载)。我不是在Start()中做的,我需要按照上面的说明进行操作吗?

3)我能读到它吗?

0 个答案:

没有答案