首页> 中国专利> 用于数据网格控件的水平滚动条的显示处理方法和装置

用于数据网格控件的水平滚动条的显示处理方法和装置

摘要

本发明公开了一种用于数据网格控件的水平滚动条的显示处理方法和装置。该用于数据网格控件的水平滚动条的显示处理方法包括:获取数据网格控件中的空行,其中,数据网格控件在数据为空时存在空行,空行中包括容器,空行的总宽度与数据网格控件中所有列的列宽总和一致;在数据网格控件的数据为空时,通过空行获取数据网格控件中所有列的列宽总和;以及根据数据网格控件中所有列的列宽总和显示水平滚动条。通过本发明,解决了相关技术中在无数据时,DataGrid控件无法显示横向滚动条以查看所有的列的问题,进而达到了不受数据有无的限制而直接显示水平滚动条以查看DataGrid控件中所有列的效果。

著录项

  • 公开/公告号CN103577047A

    专利类型发明专利

  • 公开/公告日2014-02-12

    原文格式PDF

  • 申请/专利权人 北京国双科技有限公司;

    申请/专利号CN201310541265.8

  • 发明设计人 王月;

    申请日2013-11-05

  • 分类号G06F3/0481(20130101);G06F3/0485(20130101);G06F17/30(20060101);

  • 代理机构11240 北京康信知识产权代理有限责任公司;

  • 代理人李志刚;吴贵明

  • 地址 100086 北京市海淀区双榆树小区知春路76号翠宫饭店8层A间

  • 入库时间 2024-02-19 22:40:22

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-01-07

    专利权人的姓名或者名称、地址的变更 IPC(主分类):G06F3/0481 变更前: 变更后: 申请日:20131105

    专利权人的姓名或者名称、地址的变更

  • 2019-06-28

    专利权质押合同登记的生效 IPC(主分类):G06F3/0481 登记号:2019990000503 登记生效日:20190531 出质人:北京国双科技有限公司 质权人:深圳黑马天下投资咨询有限公司 发明名称:用于数据网格控件的水平滚动条的显示处理方法和装置 授权公告日:20160817 申请日:20131105

    专利权质押合同登记的生效、变更及注销

  • 2016-08-17

    授权

    授权

  • 2014-03-12

    实质审查的生效 IPC(主分类):G06F3/0481 申请日:20131105

    实质审查的生效

  • 2014-02-12

    公开

    公开

说明书

技术领域

本发明涉及互联网领域,具体而言,涉及一种用于数据网格控件的水平滚动条的显示处理方法和装置。

背景技术

窗口呈现基础(Windows Presentation Foundation,简称WPF)是微软新一代图形系统,可以生成具有震撼视觉体验的Windows客户端应用程序。

WPF自带数据网格(DataGrid)控件,该DataGrid控件在应用程序开发中使用比较频繁。在相关技术中,通过DataGrid控件可以在行与列间灵活地显示各种数据,当数据比较复杂时,通过DataGrid控件展示数据就需要使用很多的数据列,而受软件界面宽度的限制,当数据列数过多时,需要在界面上使用横向滚动条,这样,用户可以通过拖动横向滚动条查看所有的数据列,然而,当DataGrid控件中无数据时,在相关技术中,无法显示横向滚动条以查看所有的列。

针对相关技术中在无数据时DataGrid控件无法显示横向滚动条以查看所有的列的问题,目前尚未提出有效的解决方案。

发明内容

本发明的主要目的在于提供一种用于数据网格控件的水平滚动条的显示处理方法和装置,以解决相关技术中在DataGrid控件中无数据时,用户无法在不显示固定控件的条件下查看当前所有列的问题。

为了实现上述目的,根据本发明的一个方面,提供了一种用于数据网格控件的水平滚动条的显示处理方法。该方法包括:获取数据网格控件中的空行,其中,数据网格控件在数据为空时存在空行,空行中包括容器,空行的总宽度与数据网格控件中所有列的列宽总和一致;在数据网格控件的数据为空时,通过空行获取数据网格控件中所有列的列宽总和;以及根据数据网格控件中所有列的列宽总和显示水平滚动条。

进一步地,通过空行获取所述数据网格控件中所有列的列宽总和包括:获取数据网格控件中的当前数据内容;获取当前数据内容的父级数据内容;将容器的宽度绑定到当前数据内容的父级数据内容自定义的行宽度属性,行宽度属性用于获取数据网格控件中所有列的列宽总和;以及通过行宽属性获取数据网格控件中所有列的列宽总和。

进一步地,自定义的行宽度属性通过以下方式得到:在数据网格控件所在的数据内容上计算出总列宽;以及将总列宽赋给自定义的行宽度属性。

进一步地,在根据数据网格控件中所有列的列宽总和显示水平滚动条之前,该显示处理方法还包括:为数据网格控件加载数据源。

进一步地,在为数据网格控件加载数据源之前,该显示处理方法还包括:判断数据网格控件的数据源是否为空;如果数据网格控件的数据源不为空,则不做处理;如果数据网格控件的数据源为空,则将数据网格控件的用户能否添加新行的属性设置为真;以及在将数据网格控件的用户能否添加新行的属性设置为真之后,将数据网格控件的行宽度赋值为所述空行的行宽度。

为了实现上述目的,根据本发明的另一方面,提供了一种用于数据网格控件的水平滚动条的显示处理装置。该装置包括:第一获取单元,用于获取数据网格控件中的空行,其中,数据网格控件在数据为空时存在空行,空行中包括容器,空行的总宽度与数据网格控件中所有列的列宽总和一致;第二获取单元,用于在数据网格控件的数据为空时,通过空行获取数据网格控件中所有列的列宽总和;以及显示单元,用于根据数据网格控件中所有列的列宽总和显示水平滚动条。

进一步地,第二获取单元包括:第一获取模块,用于获取数据网格控件中的当前数据内容;第二获取模块,用于获取当前数据内容的父级数据内容;绑定模块,用于将容器的宽度绑定到当前数据内容的父级数据内容自定义的行宽度属性,行宽度属性用于获取数据网格控件中所有列的列宽总和;以及第三获取模块,用于通过行宽属性获取数据网格控件中所有列的列宽总和。

进一步地,为了得到所述自定义的行宽度属性,第二获取单元还包括:计算模块,用于在数据网格控件所在的数据内容上计算出所述总列宽;以及赋值模块,用于将所总列宽赋给自定义的行宽度属性。

进一步地,装置还包括:加载单元,用于在根据数据网格控件中所有列的列宽总和显示水平滚动条之前,为数据网格控件加载数据源。

进一步地,该装置还包括:判断单元,用于判断数据网格控件的数据源是否为空;处理单元,用于如果数据网格控件的数据源不为空,则不做处理;设置单元,用于如果数据网格控件的数据源为空,则将数据网格控件的用户能否添加新行的属性设置为真;以及赋值单元,用于在将数据网格控件的用户能否添加新行的属性设置为真之后,将数据网格控件的行宽度赋值为空行的行宽度。

通过本发明,采用获取数据网格控件中的空行,其中,数据网格控件在数据为空时存在空行,空行中包括容器,空行的总宽度与数据网格控件中所有列的列宽总和一致;在数据网格控件的数据为空时,通过空行获取数据网格控件中所有列的列宽总和;以及根据数据网格控件中所有列的列宽总和显示水平滚动条,解决了相关技术中在无数据时,DataGrid控件无法显示横向滚动条以查看所有的列的问题,进而达到了不受数据有无的限制而直接显示水平滚动条以查看DataGrid控件中所有列的效果。

附图说明

构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明第一实施例的用于数据网格控件的水平滚动条的显示处理装置的示意图;

图2是根据本发明第二实施例的用于数据网格控件的水平滚动条的显示处理装置的示意图;

图3是根据本发明第三实施例的用于数据网格控件的水平滚动条的显示处理装置的示意图;

图4是根据本发明第四实施例的用于数据网格控件的水平滚动条的显示处理装置的示意图;

图5是根据本发明第五实施例的用于数据网格控件的水平滚动条的显示处理装置的示意图;

图6是根据本发明第一实施例的用于数据网格控件的水平滚动条的显示处理方法的流程图;

图7是根据本发明第二实施例的用于数据网格控件的水平滚动条的显示处理方法的流程图;以及

图8是根据本发明第三实施例的用于数据网格控件的水平滚动条的显示处理方法的流程图。

具体实施方式

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。

为了使本领域的技术人员更好的理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,在本领域普通技术人员没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明的保护范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。

根据本发明的实施例,提供了一种用于数据网格控件的水平滚动条的显示处理装置,该用于数据网格控件的水平滚动条的显示处理装置用于显示水平滚动条以查看所有列的信息,其中,需要说明的是,该用于数据网格控件的水平滚动条的显示处理装置在显示水平滚动条时不受当前数据网格控件有无数据有的影响。

图1是根据本发明第一实施例的用于数据网格控件的水平滚动条的显示处理装置的示意图。

如图1所示,该装置包括:第一获取单元10、第二获取单元20和显示单元30。

第一获取单元10用于获取数据网格控件中的空行。在本发明实施例中,数据网格控件可以为WPF中的DataGrid控件,并且该DataGrid控件在数据为空时存在预先设定的空行,并且该空行的行样式的可见与否属性预设为不可见,这样,当在该空行中加载数据时,被加载的数据不显示在DataGrid控件的相应位置。另外,DataGrid控件中数据为空是指DataGrid控件中没有数据。需要说明的是,在本发明实施例中,空行中包括一个容器,容器的总宽度即为空行的总宽度。空行的总宽度可以与数据网格控件中所有列的列宽总和一致,或者空行的总宽度可以大于数据网格控件中所有列的列宽总和,或者空行的总宽度可以小于数据网格控件中所有列的列宽总和。

第二获取单元20用于在数据网格控件的数据为空时,通过空行获取数据网格控件中所有列的列宽总和。具体地,在本发明实施实例中,第二获取单元20可以通过空行的总宽度获取数据网格控件中所有列的列宽总和,需要说明的是,第二获取单元20可以获取到等于空行的总宽度的DataGrid控件列宽总和,第二获取单元20也可以获取到大于空行的总宽度的DataGrid控件列宽总和,第二获取单元20还可以获取到小于空行的总宽度的DataGrid控件列宽总和,其中,当每一列的列宽相等时,所有列的列宽总和等于单个列的列宽与列数的乘积;当每一列的列宽不相等时,所有列的列宽总和等于每个列的列宽的累加的和。

显示单元30用于根据数据网格控件中所有列的列宽总和显示水平滚动条。在本发明实施例中,具体地,当第二获取单元20获取的DataGrid控件中所有列的列宽总和与空行的总宽度相等时,则显示单元30恰好能显示水平滚动条以查找DataGrid控件中所有列信息;当第二获取单元20获取的DataGrid控件中所有列的列宽总和大于空行的总宽度相等时,则显示单元30能显示水平滚动条以查找DataGrid控件中部分列信息或者显示单元30不能显示水平滚动条;当第二获取单元20获取的DataGrid控件中所有列的列宽总和小于空行的总宽度时,则显示单元30不仅能显示水平滚动条以查找DataGrid控件中所有列信息,还能显示不属于列信息的其他部分。

通过本发明,采用第一获取单元10获取数据网格控件中的空行;第二获取单元20在数据网格控件的数据为空时,通过空行获取数据网格控件中所有列的列宽总和;以及显示单元30根据数据网格控件中所有列的列宽总和显示水平滚动条,解决了相关技术中在无数据时,DataGrid控件无法显示横向滚动条以查看当前所有列的问题,进而达到了不受数据有无的限制而直接显示水平滚动条以查看DataGrid控件中所有列的效果。

图2是根据本发明第二实施例的用于数据网格控件的水平滚动条的显示处理装置的示意图。

如图2所示,该实施例可以作为图1所示实施例的优选实施方式,该实施例的用于数据网格控件的水平滚动条的显示处理装置包括第一实施例的第一获取单元10、第二获取单元20和显示单元30,其中,第二获取单元20包括第一获取模块201、第二获取模块202、绑定模块203和第三获取模块204。

第一获取单元10和显示单元30的作用与第一实施例中的相同,在此不再赘述。

第一获取模块201用于获取数据网格控件中的当前数据内容。需要说明的是,在本发明实施例中,如果数据网格控件中的行作为一个类,则行的每一列就是该类中的一个对象,并且每一列对应该类中的一个字段,这样,当前数据内容即为数据网格控件中的每一行的数据内容。

第二获取模块202用于获取当前数据内容的父级数据内容。需要说明的是,在本发明实施例中,如果数据网格控件作为一个类,则数据网格控件中的每一行就是该类中的一个对象,并且每一行对应该类中的一个字段,这样,父级数据内容即为数据网格控件所在的数据内容,第二获取模块202可以用于获取行所在的数据网格控件所在的数据内容,这里的行可以是空行。

绑定模块203用于将容器的宽度绑定到当前数据内容的父级数据内容自定义的行宽度属性,即,绑定模块20可以用于将容器的宽度绑定到行所在的数据网格控件自定义的行宽度属性,其中,容器为空行的容器,并且容器对应的空行的行样式的可见与否属性预设为不可见,这样,当在该容器中加载数据时,被加载的数据不显示在DataGrid控件的相应位置,行宽度属性包括预先设定的行的总宽度,该行宽度属性用于获取数据网格控件中所有列的列宽总和,这样,绑定模块203可以用于将空行的宽度绑定到空行所在的数据网格控件自定义的行宽度属性上。

需要说明的是,在本发明实施例中,可以只通过第一获取模块201或者第二获取模块202获取自定义的行宽度属性,而无需同时采用第一获取模块201和第二获取模块202以获取自定义的行宽度属性。

第三获取模块204用于通过行宽属性获取数据网格控件中所有列的列宽总和。在本发明实施例中,行宽属性中的行的总宽度等于数据网格控件中所有列的列宽总和。

通过本发明实施例,采用绑定模块203将空行的总宽度绑定到行宽属性中的列宽总和,实现了空行的总宽度与数据网格控件中所有列的列宽总和相等的目的,达到了恰好显示水平滚动条以查看所有列信息的效果。

图3是根据本发明第三实施例的用于数据网格控件的水平滚动条的显示处理装置的示意图。

如图3所示,该实施例可以作为图2所示实施例的优选实施方式,该实施例的用于数据网格控件的水平滚动条的显示处理装置包括第二实施例的第一获取单元10、第二获取单元20和显示单元30,其中,第二获取单元20除了包括第一获取模块201、第二获取模块202、绑定模块203和第三获取模块204之外,还包括计算模块205和赋值模块206,计算模块205和赋值模块206用于得到数据网格控件自定义的行宽度属性。

第一获取单元10和显示单元30以及第一获取模块201、第二获取模块202、绑定模块203和第三获取模块204的作用与第一实施例中的相同,在此不再赘述。

计算模块205用于在数据网格控件的数据内容上计算出总列宽。具体地,当每一列的列宽相等时,总列宽等于单个列的列宽与列数的乘积;当每一列的列宽不相等时,总列宽等于每个列的列宽的累加的和。

赋值模块206用于将总列宽赋给自定义的行宽度属性,即,赋值模块206可以用于将计算模块205计算得到的总列宽赋值给数据网格控件中行宽度的预设值,其中,行宽度的预设值即为行宽度属性。

图4是根据本发明第四实施例的用于数据网格控件的水平滚动条的显示处理装置的示意图。

如图4所示,该实施例可以作为图1所示实施例的优选实施方式,该实施例的用于数据网格控件的水平滚动条的显示处理装置除了包括第一实施例的第一获取单元10、第二获取单元20和显示单元30之外,还包括加载单元40。

第一获取单元10、第二获取单元20和显示单元30的作用与第一实施例中的相同,在此不再赘述。

加载单元40用于在根据数据网格控件中所有列的列宽总和显示水平滚动条之前为数据网格控件加载数据源。数据源指提供某种所需要的数据的容器或者原始媒体,即,数据源为数据的来源,通过数据源可以找到数据所在的数据库。在本发明实施例中,加载单元40可以用于为数据网格控件加载有数据的数据源和无数据的数据源。

图5是根据本发明第五实施例的用于数据网格控件的水平滚动条的显示处理装置的示意图。

如图5所示,该实施例可以作为图4所示实施例的优选实施方式,该实施例的用于数据网格控件的水平滚动条的显示处理装置除了包括第四实施例的第一获取单元10、第二获取单元20、显示单元30和加载单元40之外,还包括判断单元50、处理单元60、设置单元70和赋值单元80。

第一获取单元10、第二获取单元20、显示单元30和加载单元40的作用与第一实施例中的相同,在此不再赘述。

判断单元50用于判断数据网格控件的数据源是否为空,其中,当数据源无数据时,判断为该数据源为空,否则当数据源有数据时,判断为该数据源不为空。

处理单元60用于如果数据网格控件的数据源不为空,则不做处理。在本发明实施例中,不做处理是指不对数据网格控件做处理。

设置单元70用于如果数据网格控件的数据源为空,则将数据网格控件的用户能否添加新行的属性设置为真,这样,数据网格控件就会自动添加一行空行。需要说明的是,在本发明实施例中,设置单元70可以用添加单元代替,该添加单元用于在空行添加一条无谓的数据,该无谓的数据是指任何数据,并且在空行中的该无谓的数据不显示在数据网格控件中。

赋值单元80用于在将数据网格控件的用户能否添加新行的属性设置为真之后,将数据网格控件的行宽度赋值为空行的行宽度。

根据本发明的实施例,提供了一种用于数据网格控件的水平滚动条的显示处理方法,该用于数据网格控件的水平滚动条的显示处理方法用于显示水平滚动条以查看所有列的信息,其中,需要说明的是,该用于数据网格控件的水平滚动条的显示处理装置在显示水平滚动条时不受当前数据网格控件有无数据有的影响。该用于数据网格控件的水平滚动条的显示处理方法可以运行在计算机处理设备上。需要说明的是,本发明实施例所提供的用于数据网格控件的水平滚动条的显示处理方法可以通过本发明实施例的用于数据网格控件的水平滚动条的显示处理装置来执行,本发明实施例的用于数据网格控件的水平滚动条的显示处理装置也可以用于执行本发明实施例的用于数据网格控件的水平滚动条的显示处理方法。

图6是根据本发明第一实施例的用于数据网格控件的水平滚动条的显示处理方法的流程图。

如图6所示,该方法包括如下的步骤S101至步骤S103:

步骤S101,获取数据网格控件中的空行。

在本发明实施例中,数据网格控件可以为WPF中的DataGrid控件,并且该DataGrid控件在数据为空时存在预先设定的空行,并且该空行的行样式的可见与否属性预设为不可见,这样,当在该空行中加载数据时,被加载的数据不显示在DataGrid控件的相应位置。另外,DataGrid控件中数据为空是指DataGrid控件中没有数据。需要说明的是,在本发明实施例中,空行中包括一个容器,容器的总宽度即为空行的总宽度。空行的总宽度可以与数据网格控件中所有列的列宽总和一致,或者空行的总宽度可以大于数据网格控件中所有列的列宽总和,或者空行的总宽度可以小于数据网格控件中所有列的列宽总和。

步骤S102,通过空行获取数据网格控件中所有列的列宽总和。

具体地,在本发明实施实例中,可以通过空行的总宽度获取数据网格控件中所有列的列宽总和,需要说明的是,可以获取到等于空行的总宽度的DataGrid控件列宽总和,也可以获取到大于空行的总宽度的DataGrid控件列宽总和,还可以获取到小于空行的总宽度的DataGrid控件列宽总和,其中,当每一列的列宽相等时,所有列的列宽总和等于单个列的列宽与列数的乘积;当每一列的列宽不相等时,所有列的列宽总和等于每个列的列宽的累加的和。

步骤S103,根据数据网格控件中所有列的列宽总和显示水平滚动条。

在本发明实施例中,具体地,当获取的DataGrid控件中所有列的列宽总和与空行的总宽度相等时,则恰好能显示水平滚动条以查找DataGrid控件中所有列信息;当获取的DataGrid控件中所有列的列宽总和大于空行的总宽度相等时,则能显示水平滚动条以查找DataGrid控件中部分列信息或者不能显示水平滚动条;当获取的DataGrid控件中所有列的列宽总和小于空行的总宽度时,则不仅能显示水平滚动条以查找DataGrid控件中所有列信息,还能显示不属于列信息的其他部分。

在本发明实施例中,该用于数据网格控件的水平滚动条的显示处理方法还可以包括在根据数据网格控件中所有列的列宽总和显示水平滚动条之前为数据网格控件加载数据源。数据源指提供某种所需要的数据的容器或者原始媒体,即,数据源为数据的来源,通过数据源可以找到数据所在的数据库。在本发明实施例中,可以为数据网格控件加载有数据的数据源和无数据的数据源。

通过本发明,采用获取数据网格控件中的空行;在数据网格控件的数据为空时,通过空行获取数据网格控件中所有列的列宽总和;以及根据数据网格控件中所有列的列宽总和显示水平滚动条,解决了相关技术中在无数据时,DataGrid控件无法显示横向滚动条以查看所有的列的问题,进而达到了不受数据有无的限制而直接显示水平滚动条以查看DataGrid控件中所有列的效果。

图7是根据本发明第二实施例的用于数据网格控件的水平滚动条的显示处理方法的流程图。

如图7所示,该用于数据网格控件的水平滚动条的显示处理方法包括如下的步骤S201至步骤S206,该实施例可以作为图6所示实施例的优选实施方式。

步骤S201,同图6所示实施例的步骤S101,在此不再赘述。

步骤S202,获取数据网格控件中的当前数据内容。

需要说明的是,在本发明实施例中,如果数据网格控件中的行作为一个类,则行的每一列就是该类中的一个对象,并且每一列对应该类中的一个字段,这样,当前数据内容即为数据网格控件中的每一行的数据内容。

步骤S203,获取当前数据内容的父级数据内容。

需要说明的是,在本发明实施例中,如果数据网格控件作为一个类,则数据网格控件中的每一行就是该类中的一个对象,并且每一行对应该类中的一个字段,这样,父级数据内容即为数据网格控件所在的数据内容,可以获取行所在的数据网格控件所在的数据内容,这里的行可以是空行。

步骤S204,将容器的宽度绑定到当前数据内容的父级数据内容自定义的行宽度属性。

在本发明实施例中,将容器的宽度绑定到当前数据内容的父级数据内容自定义的行宽度属性,即,将容器的宽度绑定到行所在的数据网格控件自定义的行宽度属性,其中,容器为空行的容器,并且容器对应的空行的行样式的可见与否属性预设为不可见,这样,当在该容器中加载数据时,被加载的数据不显示在DataGrid控件的相应位置,行宽度属性包括预先设定的行的总宽度,该行宽度属性用于获取数据网格控件中所有列的列宽总和,这样,可以将空行的宽度绑定到空行所在的数据网格控件自定义的行宽度属性上。在本发明实施例中,自定义的行宽度属性通过以下方式得到:在数据网格控件的数据内容上计算出总列宽,具体地,当每一列的列宽相等时,总列宽等于单个列的列宽与列数的乘积;当每一列的列宽不相等时,总列宽等于每个列的列宽的累加的和;将总列宽赋给自定义的行宽度属性,即,可以将计算得到的总列宽赋值给数据网格控件中行宽度的预设值,其中,行宽度的预设值即为行宽度属性。

需要说明的是,在本发明实施例中,可以只通过步骤S202或者步骤S203获取自定义的行宽度属性,而无需同时采用步骤S202和步骤S203以获取自定义的行宽度属性。

步骤S205,通过行宽属性获取数据网格控件中所有列的列宽总和。

在本发明实施例中,行宽属性中的行的总宽度等于数据网格控件中所有列的列宽总和。

步骤S206,同图6所示实施例的步骤S103,在此不再赘述。

通过本发明实施例,采用将空行的总宽度绑定到行宽属性中的列宽总和,实现了空行的总宽度与数据网格控件中所有列的列宽总和相等的目的,达到了恰好显示水平滚动条以查看所有列信息的效果。

图8是根据本发明第三实施例的用于数据网格控件的水平滚动条的显示处理方法的流程图。

如图8所示,该用于数据网格控件的水平滚动条的显示处理方法包括如下的步骤S301至步骤S307,该实施例可以作为图6所示实施例的优选实施方式。

步骤S301至步骤S302,分别同图6所示实施例的步骤S101至步骤S102,在此不再赘述。

步骤S303,判断数据网格控件的数据源是否为空。

需要说明的是,在判断数据网格控件的数据源是否为空之前,可以先获取数据源,其中,数据源可以包括第三方代理、互联网和用户通过监控导入的表格等。当数据源有数据时,判断为该数据源不为空,执行步骤S304A,否则当数据源无数据时,判断为该数据源为空,执行步骤S304B。

步骤S304A,不做处理。

如果数据网格控件的数据源不为空,则不做处理。在本发明实施例中,不做处理是指不对数据网格控件做处理。

步骤S304B,将数据网格控件的用户能否添加新行的属性设置为真。

如果数据网格控件的数据源为空,则将数据网格控件的用户能否添加新行的属性设置为真,这样,数据网格控件就会自动添加一行空行。需要说明的是,在本发明实施例中,可以在空行中添加一条无谓的数据,该无谓的数据是指任何数据,并且由于空行的行式样属性为不可见,因此,空行中的该无谓的数据不显示在数据网格控件中。

步骤S305,将数据网格控件的行宽度赋值为空行的行宽度。

在本发明实施例中,在将数据网格控件的用户能否添加新行的属性设置为真之后,将数据网格控件的行宽度赋值为空行的行宽度。

步骤S306,为数据网格控件加载数据源。

在本发明实施例中,数据源指提供某种所需要的数据的容器或者原始媒体,即,数据源为数据的来源,通过数据源可以找到数据所在的数据库。在本发明实施例中,可以为数据网格控件加载有数据的数据源和无数据的数据源。

步骤S307,同图6所示实施例的步骤S103,在此不再赘述。

从以上的描述中,可以看出,通过本发明,采用获取数据网格控件中的空行;在数据网格控件的数据为空时,通过空行获取数据网格控件中所有列的列宽总和;以及根据数据网格控件中所有列的列宽总和显示水平滚动条,解决了相关技术中在无数据时,DataGrid控件无法显示横向滚动条以查看所有的列的问题,进而达到了不受数据有无的限制而直接显示水平滚动条以查看DataGrid控件中所有列的效果。

需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号