【发布时间】:2012-08-21 00:27:39
【问题描述】:
在我的 silverlight 应用程序中,我需要从 ViewModel 向 View 发送通知。作为对它的响应,应该调用 UI 控件上的方法。我知道有两种方法可以做到这一点:
1) 在 ViewModel 中引发一个事件,并在 View 后面的代码中处理它。
2) 从 ViewModel 发送消息(使用 MVVM Light 消息支持)并在 View 的代码中响应此消息。
我想知道是否有一种方法可以在不使用 View 代码中的代码的情况下完成此操作,例如通过 XAML 中的某种数据绑定?
请分享任何想法。
关于视图在收到来自 ViewModel 的通知时应该做什么的附加信息
在视图的 XAML 中,我声明了一个自定义 Silverlight 网格控件的实例,它具有以下方法:
public void FileExportFinished(bool fileExportSucceeded)
我想从 XAML 调用此方法,以响应从 ViewModel 收到的通知,传递一个与通知一起收到的布尔值。
【问题讨论】:
-
这取决于你想处理什么,你想在哪里处理它以及你想如何处理它。也许
DataTrigger? -
您能多解释一下您要处理的内容吗?
-
问题已更新,请查收。
-
@dvvrd 我认为 Silverlight 没有 DataTrigger
-
@Narek 可以在您的视图中包含代码隐藏。这样做并不违反 MVVM,只要这段代码是 View 逻辑。 MVVM 的真正目标是在您的代码背后没有业务逻辑。
标签: silverlight mvvm mvvm-light