WPF-评估XAML中的Lambdas

WPF-评估XAML中的Lambdas,wpf,xaml,add-in,Wpf,Xaml,Add In,我正在用WPF编写一个应用程序。把我所有的转换器都做成简单的东西,真是令人厌烦 我环顾四周,找到了一个。它看起来不错,但已经快一年没有发布过任何版本了,看起来已经被抛弃了 有人用过这个吗?它稳定吗?是否有人建议使用不同的解决方案来允许在XAML中使用Lambdas(或者避免使用大量转换器)?您是正确的,自2008年以来没有正式版本。但是,最后一次发布是在2009年10月22日完成的。您是正确的,自2008年以来没有正式发布过。然而,最后一次是在2009年10月22日完成的。跳到问题的最后一部分:

我正在用WPF编写一个应用程序。把我所有的转换器都做成简单的东西,真是令人厌烦

我环顾四周,找到了一个。它看起来不错,但已经快一年没有发布过任何版本了,看起来已经被抛弃了


有人用过这个吗?它稳定吗?是否有人建议使用不同的解决方案来允许在XAML中使用Lambdas(或者避免使用大量转换器)?

您是正确的,自2008年以来没有正式版本。但是,最后一次发布是在2009年10月22日完成的。

您是正确的,自2008年以来没有正式发布过。然而,最后一次是在2009年10月22日完成的。

跳到问题的最后一部分:是关于WPF门徒的讨论,提出了M-V-VM否定了对转换器的大部分需求的概念;ViewModel应以适合该视图的方式向视图显示数据

为什么要编写一个单独的类,实现IValueConverter,充实
Convert
ConvertBack
方法,只是为了得到一个颜色的Int32,而您可以让VM首先公开一个颜色属性,对吗

我想答案取决于你对视图和视图模型之间的分离有多虔诚。。。我开始认为ViewModel应该简单地表示模型并对其应用业务规则,并且应该是“视图不可知的”,并且可能需要一个中间层来专门为您的视图操作ViewModel,因此如果您交换视图(无论出于何种原因!),您不需要重写VM,只是“中间层”。。。然后我想到WPF已经有了这样一个以价值转换器形式存在的中介

因此,总结一下:您可以通过简单地让您的VM首先公开适当类型的属性来消除转换器的大量重复开发

现在你需要决定你是否想


只是我的2c价值…:)

跳到问题的最后一部分:是关于WPF门徒的讨论,提出M-V-VM否定了对转换器的大部分需求;ViewModel应以适合该视图的方式向视图显示数据

为什么要编写一个单独的类,实现IValueConverter,充实
Convert
ConvertBack
方法,只是为了得到一个颜色的Int32,而您可以让VM首先公开一个颜色属性,对吗

我想答案取决于你对视图和视图模型之间的分离有多虔诚。。。我开始认为ViewModel应该简单地表示模型并对其应用业务规则,并且应该是“视图不可知的”,并且可能需要一个中间层来专门为您的视图操作ViewModel,因此如果您交换视图(无论出于何种原因!),您不需要重写VM,只是“中间层”。。。然后我想到WPF已经有了这样一个以价值转换器形式存在的中介

因此,总结一下:您可以通过简单地让您的VM首先公开适当类型的属性来消除转换器的大量重复开发

现在你需要决定你是否想


只是我的2c价值…:)

在看了作者第一篇博文中的示例后,我认为他在WPF和XAML方面有点遗漏了要点

当然,编写简单的转换器可能会很烦人,但是当您将lambdas嵌入到XAML中时,您就开始拥有一个整体视图了。要使用作者自己的演示短日期的示例,只要开始使用lambda,当用户需要不同格式(即mm/dd/yy、dd/mm/yy、yy/mm/dd)时,您就必须更改视图。如果这些被保留为转换器,那么它们可以与一个资源组件一起封装,并在不改变视图的情况下随意交换。同样的概念也适用于因用户文化而改变的任何其他内容


显然,WPFix库在某些方面可能很酷,每个人对它都会有稍微不同的看法。但在编写这些转换器时,请将XAML的声明性本质看作是一个积极的方面而不是消极的方面——它为您提供了数据的实际表示和数据表示准备之间的抽象。如果你正在编写一个简单的应用程序或一个快速原型,那么将这两个(视图和视图模型)混合在一起可能是好的,但是对于更大规模的制作,你会发现将这两个保持分离是有益的。

在看了作者在第一篇博文中的示例后,我认为他在WPF和XAML方面有点漏掉了重点

当然,编写简单的转换器可能会很烦人,但是当您将lambdas嵌入到XAML中时,您就开始拥有一个整体视图了。要使用作者自己的演示短日期的示例,只要开始使用lambda,当用户需要不同格式(即mm/dd/yy、dd/mm/yy、yy/mm/dd)时,您就必须更改视图。如果这些被保留为转换器,那么它们可以与一个资源组件一起封装,并在不改变视图的情况下随意交换。同样的概念也适用于因用户文化而改变的任何其他内容

显然,WPFix库在某些方面可能很酷,每个人对它都会有稍微不同的看法。但在编写这些转换器时,请将XAML的声明性本质看作是一个积极的方面而不是消极的方面——它为您提供了数据的实际表示和数据表示准备之间的抽象。如果您正在编写一个简单的应用程序或一个快速原型,那么将这两个应用程序(视图和视图模型)混合在一起可能会很好,但对于更大规模的制作,您会发现这是有益的