为了账号安全,请及时绑定邮箱和手机立即绑定

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

标签:
C# 资讯

概述

在此前的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是您应该查找的属性。

https://img1.sycdn.imooc.com//5c1782290001bf4b08500520.jpg

如何使用这两个新属性

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

    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>
    _flexgrid.GroupDefinition = Properties.Settings.Default.GroupInfo;
  • Load:在用户设置等某个位置保存状态后,您可以通过分配“组定义”属性来使用此信息加载相同的组状态,如下所示:

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

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

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>
_flexgrid.SortDefinition = Properties.Settings.Default.SortInfo;
  • Load :保存排序信息后,可以使用它将网格恢复为相同的排序状态,如下所示:

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

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


ComponentOne Enterprise | 下载试用

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

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


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消