彩票走势图

Mindscape WPF Elements使用教程:排序、过滤和分组

原创|其它|编辑:郝浩|2012-12-05 15:15:51.000|阅读 517 次

概述:如何在Mindscape WPF Elements中实现排序、过滤和分组呢?本文将通过代码示例来详细介绍。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:

Mindscape WPF Elements中时如何实现排序、过滤和分组的呢,今天就来分享一下:

网格排序

网格属性可以按照以下方式来进行设置:

通过设置一个合适的IComparer排序属性:

<ms:PropertyGrid Sorting='{x:Static ms:PropertySorting.ByHumanName}'/>

通过设置的BindingView属性默认视图的CustomSort属性。

通过应用SortDescription到BindingView属性的默认视图,如下:

属性网格排序(程序):

SortDescription alphabetical = new SortDescription("Node.HumanName", ListSortDirection.Ascending);

ICollectionView view = CollectionViewSource.GetDefaultView(PropertyGrid1.BindingView);

view.SortDescriptions.Add(alphabetical);
如果网格的一个实例包含扩展节点,排序描述不传播到子节点(但自定义排序会),如果使用的是SortDescriptions来进行子节点排序,
在BindingView collection中定位父节点,并应用一个SortDescription到子属性的默认视图。

过滤网格条目

网格属性可以通过设置BindingView属性的默认视图的过滤属性来过滤,如下所示:

ICollectionView view = CollectionViewSource.GetDefaultView(PropertyGrid1.BindingView);
view.Filter = delegate(object obj)
{
  Node node = ((PropertyGridRow)obj).Node;
  return node.Children.Count == 0;
};

分组网格

属性可以按照下面的方法来进行分组:

通过设置分组属性到一个合适的GroupDescription,分组属性包含了一个预定义的对于按情况分组的GroupDescription。

分组属性(声明):

<ms:PropertyGrid Grouping='{x:Static ms:PropertyGrouping.ByCategory}'/>

通过应用一个GroupDescription到绑定窗口属性的默认视图,如下所示:

分组属性(程序):

 PropertyGroupDescription byCategory = new PropertyGroupDescription("Node", new NodeToCategoryConverter());
ICollectionView view = CollectionViewSource.GetDefaultView(PropertyGrid1.BindingView);
view.GroupDescriptions.Add(byCategory);

内置支持

属性网格控件选择性的用命令显示工具栏,比如对于按字母顺序排序,或按照类别分组(使用CategoryAttribute),或是搜索过滤设备


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn

文章转载自:慧都控件

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP