【Visual Studio 扩展工具】使用ComponentOne中的属性保存和还原布局

概述

在此前的ComponentOne中,我们为C1FlexGrid(最快,最灵活的.Net数据网格控件)添加了一个非常强大的动态分组功能,这篇技术博客《将动态分组添加到.NET表格控件FlexGrid中》是通过GroupDescriptions属性为我们演示了此功能。 随着ComponentOne Enterprise 2018v3版本的正式发布,ComponentOne For WinForm 中的C1Flexgrid又向前推进了两个新属性:GroupDefinition和SortDefinition。

GroupDefinition和SortDefinition的用例

目前,C1FlexGrid允许您在GroupPanel上拖动列,实现在运行时执行分组。 但是,如果您希望将网格再次恢复到相同的分组状态,该怎么办? 例如,如果您需要按区域分析销售信息,则可以将Country和City列拖到GroupPanel,对数据进行分类并分析信息。 但是,如果其他人必须执行相同的分析,或者您需要在下次访问时继续从同一状态继续,则您希望C1Flexgrid以特定间隔保存您的分类,然后将网格恢复为相同状态。这就是GroupDefinition属性派上用场的地方。

同样,如果需要以动态预定义排序状态设置网格,则SortDefinition是您应该查找的属性。

Demo Sample

如何使用这两个新属性

1.GroupDefinition:获取/设置包含C1FlexGrid分组状态的XML格式的字符串。

  • Save:使用GroupDescriptions属性对网格进行分组或通过在C1FlexGridGroupPanel上拖动列后,可以使用GroupDefinition属性保存C1FlexGrid的分组状态,如下所示:

Properties.Settings.Default.GroupInfo = _flexgrid.GroupDefinition;
此属性以XML格式保存组信息,如下所示:


    <GroupDescriptions>
        < GroupDescription  PropertyName = "ShipCountry" SortDirection = "Ascending"
        Group =  "True"  />
        < GroupDescription  PropertyName = "ShipCity" SortDirection = "Ascending"
        Group  =  "True" />
        < GroupDescription  PropertyName  =  "ShipName"  SortDirection  = "Ascending"
        Group  = "False"  />
    </GroupDescriptions>
  • Load:在用户设置等某个位置保存状态后,您可以通过分配“组定义”属性来使用此信息加载相同的组状态,如下所示:

       _flexgrid.GroupDefinition = Properties.Settings.Default.GroupInfo;

2.SortDefinition:获取/设置包含C1FlexGrid排序状态的XML字符串。

  • Save:在对单个/范围的网格列进行排序后,通过设置列的Sort属性或单击列标题,可以使用SortDefinition属性保存C1FlexGrid的排序状态,如下所示:

Properties.Settings.Default.SortInfo = _flexGrid.SortDefinition;
此属性以XML格式保存组信息,如下所示:

<ColumnsSort>
    < ColumnSort ColumnIndex = "0" ColumnName = "ShipCountry"               
    Sort = "Ascending" />
    < ColumnSort ColumnIndex = "1" ColumnName = "ShipCity"                   
    Sort = "Ascending" /> 
    < ColumnSort ColumnIndex = "2" ColumnName = "ShipName"                    
    Sort = "Ascending" />
</ColumnsSort>
  • Load :保存排序信息后,可以使用它将网格恢复为相同的排序状态,如下所示:

_flexgrid.SortDefinition = Properties.Settings.Default.SortInfo;
我们希望 ComponentOne 中增加的新属性使您更方便地保存和加载组/排序状态,也同样希望 ComponentOne 能为您带来更敏捷的开发体验。

ComponentOne Enterprise | 下载试用

ComponentOne是一款专注于企业应用高性能开发的 .NET 全功能控件套包,包含300余种控件,支持7大平台,涵盖7大功能模块。较于市面上其他同类产品,ComponentOne更加轻盈,功能更加强大,20多年的开发经验,将为您的应用系统带来更为安全的使用体验。纯中文操作界面,一对一技术支持,厂商级的技术服务,共同造就了这款国际顶级控件套包。

您对ComponentOne 产品的任何技术问题,都有技术支持工程师提供1对1专业解答,点击此处即可发帖提问>> 技术支持论坛

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值