博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
用户界面控件的王者之争:Kendo UI vs DevExpress(二)
阅读量:6616 次
发布时间:2019-06-25

本文共 2011 字,大约阅读时间需要 6 分钟。

hot3.png

在上一篇中,笔者跟大家披露了 Kendo UIDevExpress两款控件的总体功能和网格控件的评测,今天再跟大家介绍一下两者在易用性、集成时间、代码完成方面的优缺对比。

易用性

Kendo UI

Kendo UI的安装比DevExpress要稍显复杂,因为Helpers必须手动注册,但之后就变得比较简单了,比如:

@Html.Kendo().NumericTextBox().Name("MyNumericText")

Helpers是类型化的,比如NumericTextBoxFor。如果使用带有文本字段的模型,字段只需要用'Name'就可以完成绑定。

在上面提到的例子中,字段设置属性MyNumericText的值,然后就会自动发生转换,即使是文本字段也不例外。

日期字段也是一样的。创建一个显示月份和年份的日期字段,如下面的代码:

@Html.Kendo().DatePicker().Name("MyTextBox").Depth(CalendarView.Year).Start(CalendarView.Year).Format("MMMM yyyy")

DevExpress

DevExpress的安装可以说是既简单又复杂。它在安装的时候会自动安装Visual Studio序列模板用于项目所需的各种配置,如果自己去手动添加是非常麻烦的。在任何情况下,我们都可以随意的复制模板,但有时候也会出现误差。

在DevExpress下创建控件的难度比在Kendo UI中要大,因为它的控件都是通用型的,所以我们不得不为每个控件都配置一个helper,比如:

@Html.DevExpress().SpinEdit(settings => {settings.Name = "MyPercent";settings.Properties.MinValue = 0;settings.Properties.MaxValue = 100;settings.Properties.NumberFormat = SpinEditNumberFormat.Percent;settings.Properties.SpinButtons.ShowIncrementButtons = false;}).GetHtml()

这段代码创建了一个百分比字段。这段代码显得有点臃肿,而且它没有类型化助手,同样的问题也出现在Grid控件中。

集成时间

Kendo UI

Kendo UI可以快速集成到当前的项目中,因为它既不需要大量编译也不需要大量配置。改变当前的字段也不需要花太多时间。Kendo的网格非常容易上手,但是我们的项目过于复杂,所有集成也花了相当长的时间。

DevExpress

DevExpress的集成速度稍微比Kendo要慢一些,因为它既要配置我们的站点又要配置每个字段。

自动代码完成

Kendo UI

这基本上是Kendo最好用的功能之一。它生成的HTML和JavaScript代码非常干净,它不使用表格而用Divs代替,这样界面会更加流畅。额外的JS在视图面板是不可见的,因为它全部被放到了代码库中。

DevExpress

个人感觉DevExpress的自动代码完成功能不是很好用,因为它会生成大量临时的JS代码,导致调试比较困难。HTML的生成也不是很友好。另外它用表格代替Divs,导致界面不流畅并且无法重用样式。

总结

Kendo UI DevExpress
优点
  • 技术支持渠道多,有论坛、发布会、培训、文档和博客等等
  • 即使助手被类型化,不用绑定到模型属性,可用MVC自动绑定到非类型化助手的'Name'方法
  • 控件生成的界面样式可以重用
  • 提供JavaScript API,可以使用 jQuery传统方式
  • 价格较DevExpress要便宜,可购买单个版本的授权
  • 提供各种版本的界面控件:ASP.NET,Winforms,WPF,Silverlight,Windows8等等,非常全面,还有非常强大的VS插件CodeRush,大大提升编码效率
  • 界面高端大气,适用范围广
  • 技术支持渠道和帮助文档、Demo等非常丰富,和Kendo UI差不多,反馈也比较及时
  • 代码集成完整全面,自己的代码编写量较小,可节省不少时间
缺点
  • 没有only-text文本框
  • 数字和日期只支持固定格式
  • 有些函数需要手动添加
  • 生成的HTML代码不是很友好,比如用tables而不是divs
  • 某些函数需要手动添加
  • 许多设置行需要添加到每个控件,导致出现大量冗余代码

综合以上评估,Kendo UI和DevExpress这两款界面控件在技术支持、控件功能和界面效果方面都不相上下。由于我们比较看重样式的重用,所以最终选择了Kendo UI。

转载于:https://my.oschina.net/u/1254919/blog/177147

你可能感兴趣的文章
React-Native 之 GD (十六)首页筛选功能
查看>>
SSISDB5:使用TSQL脚本执行Package
查看>>
asp.net后台进程做定时任务
查看>>
java接口中多继承的问题
查看>>
索引笔记《二》确定需要建立索引的列
查看>>
libjpeg的问题
查看>>
嵌入式 详解udev
查看>>
云安全:这也是需要花大钱去建设的部分
查看>>
中国电信集采终端6700万部 金额达1070亿元
查看>>
2016年的十个数据中心故事
查看>>
《Java并发编程的艺术》一一3.3 顺序一致性
查看>>
《设计之外——比修图更重要的111件事》—第1部分3 虚心学习
查看>>
EVCache —— Netflix 的分布式内存数据存储
查看>>
springboot docker笔记
查看>>
服务化改造实践 | 如何在 Dubbo 中支持 REST
查看>>
【第8章】JVM内存管理
查看>>
ovirt官方安装文档 附录G
查看>>
磁盘故障小案例
查看>>
HTML
查看>>
我的友情链接
查看>>