使用MVVM在View空闲时在View-Model中执行命令

时间:2014-12-12 15:01:50

标签: c# wpf mvvm mvvm-light

我希望在我的视图空闲时在我的视图模型中执行命令,并且我不希望视图背后有代码。

这可能吗? (如果答案是使用MVVM Light的EventToCommand功能更好的话) 怎么样 ?

注意:我已经知道我可以使用事件ComponentDispatcher.ThreadIdle了,但问题是如何获得一个干净的.xaml文件,后面没有代码,甚至不是简单的:

ComponentDispatcher.ThreadIdle += (...) dataContext (...)

再次感谢。

1 个答案:

答案 0 :(得分:1)

在ViewModel构造函数中执行与在后面的代码中尝试执行的操作相同的操作。类似的东西:

 public ViewModel()
    {
        ComponentDispatcher.ThreadIdle += ComponentDispatcher_ThreadIdle;
    }

    private void ComponentDispatcher_ThreadIdle(object sender, EventArgs e)
    {
        MessageBox.Show("Idle");
    }