数据源到复合控件的绑定的制作方法

文档序号:9457671阅读:200来源:国知局
数据源到复合控件的绑定的制作方法
【专利说明】数据源到复合控件的绑定
[0001]
[0002]“重算文档”是示出各种数据源和数据宿并允许数据源和数据宿之间的声明性变换的电子文档。对于互连各种数据源和数据宿的任何给定一组变换,数据源的输出可由数据宿消费,或数据源的输出可在由数据宿消费之前经受变换。这些各种变换可被评估,造成遍及重算文档来表示的一个或多个输出。
[0003]用户可以添加和编辑声明性变换,而无需对编码的深度知识。这样的编辑自动使得变换被重新计算,从而造成一个或多个输出的变化。
[0004]重算文档的一特定示例是电子数据表文档,它包括单元格的网格。任何给定单元格可能包括被求值以输出在该单元格中显示的特定值的表达式。表达式可以引用数据源,如一个或多个其他单元格或值。
[0005]简要概沐
[0006]本文所述的至少一些实施例涉及数据源到复合控件的自动化绑定。复合控件的特性被标识。此外,某一特定数据源与该复合控件相关联。对于该复合控件的一个或多个特性中的每一个特性,关于该复合控件的信息以及所述数据源被用来标识该特定数据源的可被绑定到该复合控件的对应特性的一组一个或多个字段。如果该复合控件的该对应特性已被绑定了一声明性变换的一输出参数,则在标识可被用来绑定到该复合控件的该对应特性的该组一个或多个字段时,该变换的本质也可被考虑。
[0007]该概述不旨在标识所要求保护的主题的关键特征或基本特征,也不旨在被用来帮助确定所要求保护的主题的范围。
[0008]附图简沐
[0009]为了描述可获得以上记载的及其他好处和特征的方式,将参照附图呈现各个实施例的更具体描述。可以理解,这些附图只描绘了示例实施例,并且因此不被认为是对其范围的限制,将通过使用附图并利用附加特征和细节来描述和解释各实施例,在附图中:
[0010]图1抽象地例示出其中可采用本文描述的一些实施例的计算系统;
[0011]图2例示出包括多个数据源和多个控件的环境;
[0012]图3更详细地例示出包括单个数据源和单个控件以及两者之间的关联的环境;
[0013]图4例示出用于将数据源绑定到数据控件的方法的流程图;
[0014]图5例示出用于将该特定数据源与诸如复合控件之类的一控件相关联的方法的流程图;
[0015]图6例示出一用户界面,其中例示出图库控件以及用于绑定到该图库控件的可用数据源的列表;
[0016]图7例示出与图6的用户界面类似的用户界面,不同之处在于用户选择设备数据;
[0017]图8例示出一用户界面,该用户界面示出鉴于设备数据源的字段到图库控件的特性的默认绑定的图库控件的响应;
[0018]图9例示出一用户界面,该用户界面示出用户查阅并改变与标签相关联的绑定;
[0019]图10例示出一用户界面,该用户界面示出包括可被用于将颜色值绑定到标签控件的颜色特性的颜色选择器控件的颜色选择器界面;
[0020]图11示出一用户界面,其中用户被呈现了允许用户编辑输出用于标签的颜色的变换的变换编辑器;
[0021]图12抽象地例示出示例重算用户接口,它例示出带有中介变换的若干数据源和数据宿,且被用作为解释本文所述的更宽泛原理而提供的具体示例;
[0022]图13例示出示例编译环境,该示例编译环境包括访问变换链以及产生编译代码以及依赖关系链的编译器;以及
[0023]图14例示出用于编译重算用户接口的变换链的方法的流程图;
[0024]图15例示出其中可采用本发明的原理的环境,该环境包括构造依赖于输入数据的视图合成的数据驱动的合成框架(composit1n framework);
[0025]图16例示出表示图15的环境的一个示例的流水线环境;
[0026]图17图示地例示出图16的流水线的数据部分的一实施例;
[0027]图18图示地例示出图16的流水线的分析部分的一实施例;以及
[0028]图19图示地例示出图16的流水线的视图部分的一实施例。
[0029]详细描沐
[0030]本文所述的至少一些实施例涉及便于数据源到复合控件的自动化绑定。复合控件的特性被标识。此外,某一特定数据源与该复合控件相关联。例如,该特定数据源可能已被用户从多个可用数据源中选出以便用来绑定到该复合控件。可用数据源可能已通过评估关于该复合控件的信息(诸如层次、构成特性等)以及关于所述数据源的信息(诸如模式)被自动标识,来确定哪些数据源是用于绑定到该复合控件的最合适的匹配。
[0031]对于该复合控件的一个或多个特性中的每一个特性,关于该复合控件的信息以及所选择的数据源被用来标识该特定数据源的可被绑定到该复合控件的对应特性的一组一个或多个字段。如果该复合控件的该对应特性已被绑定了一声明性变换的一输出参数,则在标识可被用来绑定到该复合控件的该对应特性的该组一个或多个字段时,该变换的本质也可被考虑。
[0032]自动化绑定过程以及对声明性变换的使用意味着即使是非程序员也可创建复杂数据与控件之间的绑定。这允许复杂控件被合理地用于诸如重算文档之类的重算用户接口的上下文中,其中数据源、数据宿以及控件之间的变换可被声明性地定义,而无需使用命令式编程。
[0033]将参考图1来描述对计算系统的一些介绍性讨论。然后,将参考后续附图描述复杂数据和控件的绑定的过程。
[0034]计算系统现在越来越多地采取多种多样的形式。例如,计算系统可以是手持式设备、电器、膝上型计算机、台式计算机、大型机、分布式计算系统或甚至常规上不被认为是计算系统的设备。在本说明书以及权利要求书中,术语“计算系统”被广义地定义为包括任何设备或系统(或其组合),该设备或系统包含至少一个物理有形的处理器以及其上能具有可由处理器执行的计算机可执行指令的物理有形的存储器。存储器可以采取任何形式,并可以取决于计算系统的性质和形式。计算系统可以分布在网络环境中,并可包括多个组分计算系统。
[0035]如图1所示,在其最基本的配置中,计算系统100通常包括至少一个处理单元102和存储器104。存储器104可以是物理系统存储器,该物理系统存储器可以是易失性、非易失性、或两者的某种组合。术语“存储器”也可在此用来指示诸如物理存储介质这样的非易失性大容量存储器。如果计算系统是分布式的,则处理、存储器和/或存储能力也可以是分布式的。如本文中所使用的,术语“可执行模块”或“可执行组件”可以指可以在计算系统上执行的软件对象、例程或方法。此处所描述的不同组件、模块、引擎以及服务可以实现为在计算系统上执行的对象或进程(例如,作为分开的线程)。
[0036]在随后的描述中,参考由一个或多个计算系统执行的动作描述了各实施例。如果这样的动作是以软件实现的,则执行动作的相关联计算系统的一个或多个处理器响应于已经执行了计算机可执行指令来引导计算系统的操作。例如,这样的计算机可执行指令可以在形成计算机程序产品的一个或多个计算机可读介质上实现。这样的操作的示例涉及对数据的操纵。计算机可执行指令(以及被操纵的数据)可被存储在计算系统100的存储器104中。计算系统100还可包含允许计算系统100例如通过网络110与其他消息处理器通信的通信信道108。计算系统100还包括显示器112,显示器112可被用于向用户显示视觉表不。
[0037]本文中描述的各实施例可包括或利用专用或通用计算机,该专用或通用计算机包括诸如例如一个或多个处理器和系统存储器等计算机硬件,如以下更详细讨论的。本文中描述的各实施例还包括用于承载或存储计算机可执行指令和/或数据结构的物理和其他计算机可读介质。这样的计算机可读介质可以是可由通用或专用计算机系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是物理存储介质。承载计算机可执行指令的计算机可读介质是传输介质。由此,作为示例而非限制,本发明的各实施例可包括至少两种显著不同的计算机可读介质:计算机存储介质和传输介质。
[0038]计算机存储介质包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储或其他磁存储设备、或可用于存储计算机可执行指令或数据结构形式的所需程序代码装置且可由通用或专用计算机访问的任何其他有形介质。
[0039]“网络”被定义为使得电子数据能够在计算机系统和/或模块和/或其它电子设备之间传输的一个或多个数据链路。当信息通过网络或另一个通信连接(硬连线、无线、或者硬连线或无线的组合)传输或提供给计算机时,该计算机将该连接适当地视为传输介质。传输介质可以包括可用于携带计算机可执行指令或数据结构形式的期望程序代码装置并可被通用或专用计算机访问的网络和/或数据链路。上述的组合应当也被包括在计算机可读介质的范围内。
[0040]此外,在到达各种计算机系统组件之后,计算机可执行指令或数据结构形式的程序代码装置可从传输介质自动传输到计算机存储介质(或反之亦然)。例如,通过网络或数据链路接收到的计算机可执行指令或数据结构可以在网络接口模块(例如,“NIC”)内的RAM中被缓冲,然后最终被传输至计算机系统RAM和/或计算机系统处的较不易失性的计算机存储介质。因而,应当理解,计算机存储介质可被包括在还利用(或甚至主要利用)传输介质的计算机系统组件中。
[0041]计算机可执行指令例如包括,当在处理器处执行时使通用计算机、专用计算机、或专用处理设备执行某一功能或某组功能的指令和数据。计算机可执行指令可以是例如二进制代码、诸如汇编语言之类的中间格式指令、或甚至源代码。尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述特征或动作。更具体而言,上述特征和动作是作为实现权利要求的示例形式而公开的。
[0042]本领域的技术人员将理解,本发明可以在具有许多类型的计算机系统配置的网络计算环境中实践,这些计算机系统配置包括个人计算机、台式计算机、膝上型计算机、消息处理器、手持式设备、多处理器系统、基于微处理器的或可编程消费电子设备、网络PC、小型计算机、大型计算机、移动电话、PDA、寻呼机、路由器、交换机等等。本发明也可在其中通过网络链接(或者通过硬连线数据链路、无线数据链路,或者通过硬连线和无线数据链路的组合)的本地和远程计算机系统两者都执行任务的分布式系统环境中实施。在分布式系统环境中,程序模块可位于本地和远程存储器存储设备中。
[0043]图2例示出包括多个数据源210和多个控件220的环境200。例如,数据源210被例示为包括五个数据源210A至210E。然而,省略号210F表示数据源210内可能存在任意数量的数据源,从只有一个到无数个,因为本文所述的原理不限于环境200中可用的数据源的数量。
[0044]每个数据源包括被组织成特定模式的一个或多个字段,所述模式描述字段之间的位置关系以及还描述每个字段的类型。尽管一数据源可具有唯一模式,但模式可在两个或更多个数据源之间共享。由于数据变得更容易丰富且存储能力更先进,数据源可能是相当复杂的,涉及无数的字段。
[0045]控件220被例示为包括三个控件220A、220B和220C。然而,再一次,省略号220D表示数据源210内可能存在任意数量的数据源,从只有一个到无数个,因为本文所述的原理不限于环境200中可用的控件的数量。
[0046]控件220各自是具有它们基于其操作的布局的概念的计算机可执行代码。例如,在可视化控件中,对应的可视化通常被显示在显示器(诸如图1的显示器112)上所显示的用户界面内。在复合控件中,一控件可被包括
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1