支持MVVM的第三方WPF控件集?

时间:2011-07-07 14:06:58

标签: .net wpf mvvm

我听说很多第三方WPF控件都存在问题,这些控件被设计为能够使用WinForms思维集的人进行编程,因此不能很好地支持MVVM。

这是一个真正的问题吗?

是否有任何主要的WPF控制供应商更好?

(通常需要在项目的程序员在WPF / MVVM上加速之前选择第三方控件集,只是获得控件集的评估是不够的)

3 个答案:

答案 0 :(得分:2)

我在MVVM中使用了Telerik和DeveExpress,Telerik迄今为止对MVVM提供了最好的支持。它们通过控制集提供一致的API以及出色的命令支持。对我来说更重要的是,他们对开箱即用的Prisim有很大的支持。 Devexpress古怪且不一致,并且不支持Prisim。

答案 1 :(得分:1)

我们使用Infragistics for Silverlight,并发现它对MVVM的支持是混合的。我们发现了几件具体的事情:

  • 你可以绑定一个网格的行集合,你可以绑定单元格的内容,但你不能绑定列集合 - 所以如果你有动态列(我们这样做),你必须求助于代码隐藏。
  • 你必须做一些奇特的技巧才能让他们的树显示任意深度的层次结构,因为默认情况下他们希望为树的每个级别都有一个不同的模板。

通过一些研究,一些附加行为和一些代码隐藏,Infragistics可以从MVVM中使用(只要你不是一个坚持MVVM意味着“没有代码隐藏”的纯粹主义者)。但它并不觉得它真的是为WPF / Silverlight做事而设计的。

答案 2 :(得分:1)

由于众所周知大多数第三方控件都不符合MVVM,因此我们有几种方法可以解决这些问题。这是一篇描述工作的帖子,因为在现实世界中,你不能指望每个人都足够慷慨地遵循MVVM。 Here is the link