整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

软件开发中最常用的第三方.NET界面控件

软件开发中最常用的第三方.NET界面控件

好的界面不仅会让应用看起来更加专业,更重要的是让用户操作更加智能和友好。本文全面总结了软件开发中最常用的几款.NET界面控件,让你对这些优秀的工具有一个全面的了解,从而帮助你选择最适合项目的界面开发框架。

DevExpress

很多人搞不清楚DevExpress和DXperience的区别,这里再次跟大家说明一下,DXperience是DevExpress下所有.NET控件的统称,目前一共有五大界面组件:WinForms,ASP.NET,WPF,Silverlight 和Windows 8 XAML。

InterSoft

Intersoft的.NET开发工具集提供了400多个UI组件,支持7种开发平台,最新发布了针对iOS、Android和Windows的跨平台工具Intersoft Mobile Studio。

Telerik

Telerik将其.NET工具集统称为DevCraft,分为Web/桌面、HTML5/JS和移动开发三个大类一共10个控件。它的Kendo UI系列支持跨平台应用开发。

ComponentOne

ComponentOne提供了大量Visual Studio控件,类型丰富,多达11个,而且都非常出名。ComponentOne Studio Enterprise为Microsoft Windows和基于网络的移动应用程序的开发者提供了一套广泛完整的UI工具和解决方案。

ComponentArt

ComponentArt是一个用于构建专门服务于用户界面层的web服务的框架。它能让在ASP.NET AJAX和Silverlight前端之间的服务器端代码完全重用。目前正往综合性数据可视化方向发展。

Infragistics

Infragistics的.net开发工具集非常全面,既有开发桌面和Web应用程序的,也有针对各个移动平台的,还有HTML5 / jQuery应用开发框架。

Syncfusion

Syncfusion开发的.NET界面套包在商业级应用领域处于领先地位,目前旗下有9款工具集,包含移动开发和Javascript版本。

本站文章除注明转载外,均为本站原创或翻译

exceljs是一个读取,操作和编写电子表格数据和样式到XLSX和JSON,从Excel电子表格文件逆向工程设计的项目。之所以称它最强,是因为它的功能强大,简直就是专门为Excel打造的前端处理插件,到目前为止,笔者还尚未见过比这个更强大的前端插件,由于其强悍的前端处理能力,这就意味着有很多操作将减轻服务器端压力,而且性能更加出色!







Github地址

https://github.com/exceljs/exceljs

安装

安装我们当然是首选npm

npm install exceljs

创建工作簿

var workbook=new Excel.Workbook();

设置工作簿属性

workbook.creator='Me';
workbook.lastModifiedBy='Her';
workbook.created=new Date(1985, 8, 30);
workbook.modified=new Date();
workbook.lastPrinted=new Date(2016, 9, 27);
// 将工作簿日期设置为1904日期系统
workbook.properties.date1904=true;

工作簿视图

“工作簿”视图控制Excel在查看工作簿时打开多少个单独的窗口。

workbook.views=[
  {
    x: 0, y: 0, width: 10000, height: 20000,
    firstSheet: 0, activeTab: 1, visibility: 'visible'
  }
]

添加工作表

var sheet=workbook.addWorksheet('My Sheet');

用addWorksheet函数的第二个参数设置工作表的选项。

  • 例如:
// 创建一个红色标签颜色的工作表
var sheet=workbook.addWorksheet('My Sheet', {properties:{tabColor:{argb:'FFC0000'}}});

// 创建一个隐藏网格线的工作表
var sheet=workbook.addWorksheet('My Sheet', {properties: {showGridLines: false}});

// 创建一个第一行和列冻结的工作表
var sheet=workbook.addWorksheet('My Sheet', {views:[{xSplit: 1, ySplit:1}]});

删除工作表

使用工作表id从工作簿中删除工作表。

  • 例如:
// 创建工作表
var sheet=workbook.addWorksheet('My Sheet');

// 使用工作表ID删除工作表
workbook.removeWorksheet(sheet.id)

访问工作表

// 迭代所有sheet
// 注意:workbook.worksheets.forEach仍然可以工作,但这个方式更好
workbook.eachSheet(function(worksheet, sheetId) {
  // ...
});

// 按名称获取表格
var worksheet=workbook.getWorksheet('My Sheet');

// 按ID获取表格
var worksheet=workbook.getWorksheet(1);

。。。。。。以上只是部分文档中的介绍,感兴趣的小伙伴可以移步Github直接查看详细的文档,完整功能了解可参考下一个标题

PS:提供了中文文档

完整功能列表

  • 创建工作簿
  • 设置工作簿属性
  • 工作簿视图
  • 添加工作表
  • 删除工作表
  • 访问工作表
  • 工作表状态
  • 工作表属性
  • 页面设置
  • 页眉和页脚
  • 工作表视图
    1. 冻结视图
    2. 拆分视图
  • Auto Filters
  • 处理单个单元格
  • 合并单元格
  • 定义名称
  • 数据验证
  • 样式
    1. 数字格式
    2. 字体
    3. 对准
    4. 边框
    5. 填充
    6. 富文本
  • 大纲级别
  • 图片
  • 文件 I/O
  • XLSX:读 XLSX写 XLSX
  • CSV:读 CSV写 CSV
  • Streaming I/O:Streaming XLSX
  • 浏览器
  • 价类型
    1. 空值
    2. 合并单元格
    3. 数值
    4. 字符串值
    5. 日期值
    6. 超链接值
    7. 公式值
    8. 丰富的文本值
    9. 布尔值
    10. 错误值

    虽然以上功能还不能包括了Excel的所有功能,但也已经相当的丰富了!

    总结

    在之前的文章中曾介绍过另一个不错的前端Excel插件,感兴趣的可以去看一看,exceljs拥有这么丰富的功能,如果你想开发一个功能强大的Web电子表格,不妨多尝试尝试!

    存的好处及应用:

    1,可以让一些固定文件如css,js等文件在第二次访问的时候直接读取本地而不用再去请求服务器,这样可以减少客服端对服务器资源的请求压力,加快客户端的响应速度。

    2,对于经常使用的数据源,可以将其存储在数据缓存中或者内存中,这样来减少数据库请求。

    3,将网站部署在多台机器上,采用分布式方式处理,可以解决多个用户请求一台服务器造成的压力,也就是分布式部署。

    4,将那么经常需要访问,但是数据又不需要经常变动的夜间做成静态页面。

    Asp.Net提供了一个缓存方法来实现缓存:OutPutCache

    OutPutCache中的属性:

    1,Duration:页面或者用户控件缓存的时间,单位是秒,

    2,Location:输出缓存的存放位置

    a)Any:客户端浏览器,代理服务器,服务端服务器等

    b)Client:请求浏览的浏览器

    c)DownStram:代理服务器,发出 请求的客户端

    d)None:对于请求的页面,禁用输出缓存

    e)Server:请求的web服务器

    f)ServerAndClient:发送请求的客户端跟原服务器

    3,CacheProfile:配置文件中缓存配置的名称,这个配置可选,

    4,NoStroe:决定了是否阻止敏感信息的二级存储

    5,ProviderName:表示使用的自定义输出缓存提供程序

    6,Shared:确定用户控件输出是否可以被多个页共享

    7,SqlDependency:表示一组数据库/表名称 对应的字符串名页或控件的输出缓存依赖于这些名称对。请注意,SqlCacheDependency 类监视输出缓存所依赖的数据库中的表,因此当更新表中的项时,使用基于表的轮询时将从缓存中移除这些项。如果以值 CommandNotification: 使用通知(在 Microsoft SQL Server 2005 中),则最终会使用 SqlDependency 类向 SQL Server 2005 服务器注册查询通知。

    8,VaryByCustom:任何表示自定义输出缓存要求的文本。如果特性的赋值为 browser,缓存将随浏览器名称和主要版本信息的不同而异。如果输入自定义字符串,则必须在应用程序的 Global.asax 文件中重写 GetVaryByCustomString 方法。

    9,VaryByHeader:分号分隔的 HTTP 标头列表,用于使输出缓存发生变化。将该特性设为多标头时,对于每个指定标头组合,输出缓存都包含一个不同版本的请求文档。