• MultiRow中文版技术白皮书


    引言

    Microsoft .NET是一项比较成熟的技术开发框架,很多的商业应用都是基于.NET开发的,在这些商业应用中,作为数据展示和录入的表格控件,是不可或缺的。大多数的表格控件在数据展示上都是比较规整的,即单行单列的展示数据。然而,实际的商业应用中需要一些多元化的数据展现方式,MultiRow就是这样一款能够自由展现数据的基于.NET平台的表格控件。

    MultiRow框架示意图

    MultiRow的主框架如下图所示。首先,通过集成设计器设计适合于业务需求的模板,并把模板应用于MulitRow控件,之后把MultiRow绑定到相关的数据源(或者直接使用MultiRow的非绑定模式),这样数据源的每一条数据记录将会根据所设计的模板进行呈现。由于MultiRow支持.NET标准Windows窗体数据绑定模型,因此,大多数情况下只需设置DataSource属性即可。

    image

    MultiRow的设计思路

    支持自由布局的架构设计

    传统的表格类控件的布局都是严格的行和列结构,通过合并单元格完成特殊布局的需要。为了实现自由布局的数据展示方式,MultiRow在架构设计时打破了常用表格控件的行列概念,可以任意操作单元格的位置和大小,可以让上下两个单元格自由叠加,也可以设计个性化的列头和列脚,提供自动对齐工具以保证版面布局的美观。

    clip_image002

    在自由布局的基础上,MultiRow中增加了模板(Template)的概念。模板主要存储了一个表格的布局结构以及外观样式,用户在设计完模板之后,将其加载到MultiRow上,数据源的数据将会通过模板逐行的展现出来。这样的设计思路满足了设计和开发分离的用户需求,负责设计表格的美工人员只需要设计一个模板,在模板中设置好表格的所有布局和外观,然后交予应用程序开发人员进行具体功能的开发。同时,设计好的模板可以被保存为XML格式的文件,方便了开发者之间的交流和共享。

    保持开放性,支持第三方控件的嵌入

    同时,MultiRow的单元格设计采用开放的体系结构,支持第三方控件的嵌入,保持了良好的扩展性和对于特殊应用需求的支持。如果用户有其他的第三方厂商开发的.NET控件,并且希望把它作为MultiRow的一个单元格使用,只有实现相关的接口就可以做到第三方控件的嵌入。同时,MultiRow缺省内置了大约二十多种单元格类型,这些单元格大部分都是嵌入了Microsoft .NET的标准控件,可以满足大多数应用程序的基本需求。

    覆盖表格控件的基本功能

    MultiRow虽然采用了自由布局的设计,但它同时支持表格控件的基本功能。MultiRow可以被很方便的设计成一个传统的规整的Matrix样式的表格,支持了数据绑定,非绑定,排序,过滤,校验,冻结,多视图显示等。

    在数据绑定方面,MultiRow支持三种模式:

    • .NET标准的数据绑定模型,任何实现了IList,IListSource,IBindingList和IBindingListView接口的实例都可以被绑定到MultiRow上,通常情况下,用户只需要设置MultiRow的DataSource和DataMember属性即可。
    • 非绑定模式,即在不绑定到数据源的情况下,可以很方便的操作和显示数据。
    • 虚拟模式,虚拟模式是为大型数据存储区而设计的,仅当数据需要显示的时候,由用户来操作单元格的填充,编辑和删除。

    在数据表现方面,除提供了基本的诸如背景色等设置外,还提供了强大的渐变色能力,命名样式能力,各种文字的排布,旋转,拉伸,对齐等。

    在数据校验方面,MultiRow内置了十余种校验器,可以方便的满足诸如值范围校验,值比较校验,正则表达式校验等,当校验失败时,可以以Tip,Icon,声音等多种方式提示用户,以便重新输入正确的值。

    重视易用性

    为了降低用户的学习成本,MultiRow采用了和DataGridView相似的接口设计,对于曾经使用过Microsoft DataGridView或者熟悉DataGridView接口设计的开发人员,使用起来会更加的的方便快捷。

    MultiRow提供了一个强大的设计器,这个设计器集成于Visual Studio里,开发人员不需在多个工具之间切换,直接在Visual Studio里完成设计与开发。MultiRow的设计器采用了和Windows Form Designer相同的设计方式,用户通过鼠标拖拽就可以完成设计,基本不需要开发者编写额外的代码,提高开发效率,节约了开发的成本。

    性能

    MultiRow支持常见表格控件的基本功能。同时,得益于MultiRow的独特设计,能够达到百万行数据的平滑滚动。行和单元格的虚拟机制更让大数据量的内存消耗达到最低,让最终用户体验不一样的速度。

    MultiRow的三种典型应用场景

    具有复杂布局的数据表格

    数据源的每一条记录根据模板上的设置进行展示,同时,用户也可以做选择,编辑,及更新数据等操作。

    clip_image004

    传统矩阵式表格的展示和操作

    规整的展示数据,用户可以对数据进行排序,过滤等各种操作。

    clip_image006

    各类票据的设计开发

    由于MultiRow采用了自由布局的设计思想,非常适合于中国样式发票类应用的设计和开发。通过我们提供的集成设计器,可以方便快速的设计出发票。另外,套打是发票中一个很常用的用例,MultiRow使用了.NET的打印机制,能够精确的实现套打功能。

    clip_image008

    试用版下载:http://gcdn.grapecity.com/showtopic-786.html 

    说明:试用期限不是30天,而是20个使用日。这样更有利于您安排试用时间。

    另外,最近我们正在举办“葡萄城控件有奖调查”,二等奖将免费获得一套MultiRow中文版,并且含服务。如果对MultiRow有兴趣,不妨试试~

    http://www.grapecity.cn/powertools/event.htm



    本文是由葡萄城技术开发团队发布,转载请注明出处:葡萄城官网


  • 相关阅读:
    (zt)在PHP中使用全局变量
    (zt)Flash与C++交互
    (zt)关于Flash Socket通信的安全策略问题的一点心得
    (zt)svn 随服务器启动
    使用InstallShield安装和卸载SQL Server数据库(利用sql脚本)
    异常查看部分代码
    VC为控件添加背景
    深入分析MFC文档视图结构
    VC数据库编程概述
    (转)WEB程序打包详解:(连接SQL2005数据库,修改配置文件,建立虚拟目录)
  • 原文地址:https://www.cnblogs.com/powertoolsteam/p/1874731.html
Copyright © 2020-2023  润新知