Silverlight 3 LoadedEvent路由到ViewModel

时间:2009-12-16 15:12:05

标签: wpf mvvm routedevents

我的客户端正在尝试挂钩视图模型中的usercontrols Loaded事件。基本上,他们想知道控件加载事件何时在视图模型中触发。他们正在寻找一种方法来实现它,而无需xaml背后的代码。这是否可行。我正在研究是否可以将加载的事件路由到xaml中的viewmodel。

2 个答案:

答案 0 :(得分:1)

这样做的一种方法是使用InvokeDataCommand。您将触发器的EventName指定为Loaded,然后在Loaded事件触发时执行您的命令(在VM中定义)。

答案 1 :(得分:0)

您需要查看commanding。与WPF相比,Silverlight支持相当弱,但它确实包含ICommand接口。您可以扩展控件以赋予它们命令属性或通过附加属性实现它们。一旦在UI中发生了动作,这些命令基本上会调用它们自己。它们完全独立于UI的构建方式(或者至少应该是这样),因此可以完全进行单元测试。

相关问题