【问题标题】:MVVM Light - Sending a notification to code behindMVVM Light - 向后面的代码发送通知
【发布时间】:2010-11-07 18:25:39
【问题描述】:

我有我的第一个 MVVM Light 应用程序,我的表现非常好,并且没有在后面的代码中添加任何内容。出于性能原因,我使用的图表控件需要调用来关闭它的更新,然后在图表系列更新后再次打开它。所以我需要从 ViewModel 调用控件上的方法。

现在我可以通过定位器的 MainStatic 方法将图表控件的引用传递给 ViewModel,从而通过“更大的锤子”方法实现所有这些。我发现自己认为这真的不是应该这样做的方式,我正在尝试以“MVVM 方式”做所有事情。任何 MVVM Light 大师都可以给我指路吗?我所发现的只是人们将命令从后面的代码发送到 ViewModel...我需要走另一条路...或者至少我认为我这样做... ;-)

【问题讨论】:

    标签: silverlight mvvm light


    【解决方案1】:

    “更新”开关应该通过可绑定属性公开,而不需要函数调用。然后,您只需通过绑定到视图模型的属性来打开和关闭它。

    显然情况并非如此,也许您应该将图表控件包装在您自己的用户控件中或将其子类化(稍微困难一些)。然后你可以公开任何你想要的属性(包括一个“更新”属性,它的设置器调用更新方法)。

    我个人对在基本用户控件上使用非 MVVM 方法(即代码隐藏)没有任何疑虑,因为它们应该更像第三方控件而不是应用程序的一部分。包装或子类化现有控件只会产生更好的可重用组件库。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-03
      • 1970-01-01
      • 1970-01-01
      • 2012-08-21
      相关资源
      最近更新 更多