VARCHART XGantt是一款功能强大的甘特图控件,其模块化的设计让您可以创建满足需要的应用程序。XGantt可用于.NET,ActiveX和ASP.NET应用程序,可以快速、简单地集成到您的应用程序中,帮助您识别性能瓶颈、避免延迟以及高效利用资源,使复杂数据变得更加容易理解。

大多数人习惯于使用舒适的排序选项,例如在Windows资源管理器中单击表中向上或向下指示的剪头,列的表头将按升序或降序对文件进行排序。本文主要向您展示在很少编程工作下为甘特图分组添加舒适排序选项的三个步骤,有任何建议或提示请在下方评论留言,方便大家学习交流。

下图显示了Windows资源管理器中Date modified列按升序排序的文件,该文件由向上指向的小箭头指示:

按下文提示的步骤可以很容易地在您的甘特图中实现舒适排列:


一、创建箭头

您需要两个用于显示箭头的图形文件,以下称为arrow-down.pngarrow-up.png, 它们必须作为Resources添加到Visual Studio解决方案中。


二、自定义表格格式

在XGantt表格StandardListCaption中,勾选所有字段的Text/Graphics combiined复选框。


三、添加代码

执行上述步骤后,向Gantt控件添加一些代码:

int _sortedByColumn = 3;private void Form1_Load(object sender, EventArgs e){//Make the resources available for XGantt://In the following 2 lines the namespace has be be adjusted as necessary.vcGantt1.SetImageResource("*ArrowDown",Default_Configuration.Properties.Resources.arrow_down);vcGantt1.SetImageResource("*ArrowUp", Default_Configuration.Properties.Resources.arrow_up);//Set the arrow in the table column by which your nodes are initially sorted:VcTable activeTable = vcGantt1.TableCollection.Active;VcTableFormat standardListCaptionTF = activeTable.TableFormatCollection.FormatByName("StandardListCaption");//Select the table format field by which your nodes are initially sorted:VcTableFormatField tff = standardListCaptionTF.get_FormatField(2);tff.GraphicsFileName = "*ArrowUp";//...
}private void vcGantt1_VcTableCaptionLeftClicking(object sender, VcTableClickingEventArgs e)
{VcNodeLevelLayout nodeLevelLayout = vcGantt1.NodeLevelLayout;VcTableFormat standardListCaptionTF = e.Table.TableFormatCollection.FormatByName("StandardListCaption"); VcTableFormatField tff = standardListCaptionTF.get_FormatField((short)(e.ColumnNumber - 1));if (e.ColumnNumber == _sortedByColumn)//Clicked again on the same column: Just reverse the sort order!{if (nodeLevelLayout.get_SortOrder(0) == VcNodeSortingOrder.vcAscending){nodeLevelLayout.set_SortOrder(0, VcNodeSortingOrder.vcDescending);tff.GraphicsFileName = "*ArrowDown";}else{nodeLevelLayout.set_SortOrder(0, VcNodeSortingOrder.vcAscending);tff.GraphicsFileName = "*ArrowUp";}}else//Clicked on another column: Sort by this column. Sort order: ascending{nodeLevelLayout.set_SortDataFieldIndex(0, tff.Index);nodeLevelLayout.set_SortOrder(0, VcNodeSortingOrder.vcAscending);tff.GraphicsFileName = "*ArrowUp";tff = standardListCaptionTF.get_FormatField((short)(_sortedByColumn - 1));tff.GraphicsFileName = string.Empty;}vcGantt1.SortNodes();_sortedByColumn = e.ColumnNumber;
}

四、结果展示

如果一切都按计划进行,甘特图中的表格标题现在应该显示排序箭头,如下图所示:


【XGantt教程】为甘特图分组添加舒适排序选项的三个步骤相关推荐

  1. 在Project软件的甘特图中添加横线和竖线

    出于各种原因,我们有时候想在Project软件的甘特图区域添加横线或竖线. 比如爱美,想让计划显示的更漂亮一些. 比如眼神不好,怕左边的任务名称和右边的横道图看串行(我是认真的). 比如好奇,看到人家 ...

  2. 箱式图 分组_小白学R(三):重复测量数据的箱式图上的p值如何改大小呢?

    上一期分享了重复数据箱式图的使用条件和数据格式小白学R(二):重复测量数据/连续数据的箱式图(ggplot包)(1),今天就奉上箱式图的代码和以及如何改箱式图上的p值大小. 画箱式图 1.1 先看数据 ...

  3. vscode使用教程python-如何在VSCode上轻松舒适的配置Python的方法步骤

    前言 之前被学长推荐使用了VSCode,后惊叹了VSCode的强大,尤其是他的配置,比之前使用sublime方便多了,刚好实验室也来了一批新的学弟学妹,来仔细的逐步的讲解一些,在自己的电脑上轻松的配置 ...

  4. 【剪辑教程】如何给视频添加配音旁白,三种文字转语音方法教给你

    视频剪辑完成,应该如何给视频配音?三种配音方法快来学 现在许多自媒体都居家创作短视频,那么给短视频配音的问题就摆着了面前,怎么给我们的短视频配音呢,接下来就教大家三种给视频添加配音的方法. 方法一:题 ...

  5. 项目管理工具dhtmlxGantt甘特图入门教程(八):数据加载(三)

    这篇文章给大家讲解如何利用 dhtmlxGantt正确保存和显示任务的结束日期,本节将给你一个明确答案. 点击获DhtmlxGantt官方正式版 首先,让我们考虑一下在处理任务日期时可能会遇到的两种情 ...

  6. 高质量项目管理-甘特图模板+教程(附下载包)/ PMP项目管理可用

    做项目管理的少不了用到甘特图,但项目流程那么多,每个都一一去做一个甘特图又需要耗费非常大的时间.所以这里给大家收集了一些甘特图模板+教程,供大家参考学习! 科普一下:甘特图(Gantt chart)又 ...

  7. 甘特图教程:如何在DHTMLX Gantt中使用工作时间和日历

    DHTMLX 甘特图中工作日历背后的关键概念 首先,让我们考虑一下我们的甘特图组件如何处理日期和日历. 默认情况下,禁用work_time选项时,任务的持续时间取决于duration_unit参数和任 ...

  8. 项目管理工具dhtmlxGantt甘特图入门教程(九):支持哪些数据格式(上篇)

    这篇文章给大家讲解 dhtmlxGantt可以加载或支持哪些数据格式. 点击获DhtmlxGantt官方正式版 dhtmlxGantt可以加载以下格式的数据: JSON: XML(dhtmlxGant ...

  9. 什么是甘特图?怎么做甘特图?

    什么是甘特图?甘特图其实就是一种线条图,20世纪初由亨利·甘特开发,因此被命名为甘特图.一般的甘特图使用横轴表示时间,纵轴表示活动或项目,图中的线条用来表示在计划期间活动的安排以及完成情况.甘特图使任 ...

  10. dhtmlxGantt让您将甘特图导出为PDF或 PNG格式

    dhtmlxGantt是用于跨浏览器和跨平台应用程序的功能齐全的Gantt图表.可满足项目管理应用程序的所有需求,是最完善的甘特图图表库.它允许你创建动态甘特图,并以一个方便的图形化方式可视化项目进度 ...

最新文章

  1. 深度学习在单图像超分辨率上的应用:SRCNN、Perceptual loss、SRResNet
  2. Objective-C NS_OPTIONS 类型的枚举
  3. Spring Boot Dubbo 应用启停源码分析
  4. Spring MVC 入门笔记
  5. linux内核网络栈代码的准备知识
  6. 【Oracle 10201 lsnrctl status卡住问题解决】
  7. big sur java home_无法在macOS Big Sur上运行Eclipse
  8. 分享Silverlight/WPF/Windows Phone一周学习导读(3月28日-4月2日)
  9. SpringMVC_1
  10. acm中c语言标准输入输出,ACM竞赛之输入输出
  11. Arduino与墨子号 BC26 4G模块的对接开发
  12. 【android】安卓高仿京东分类页
  13. centos系统上安装masscan
  14. 三维扫描仪行业调研报告 - 市场现状分析与发展前景预测
  15. Web 全栈大会:万维网之父的数据主权革命
  16. vue中Echart如何打包下载图片
  17. 广东省高中计算机学校图片,广东省排名前十的高中,快来看有你的母校吗?
  18. 学生逃课问题的系统分析
  19. 解密通往元宇宙的三大入口,VR先上AR紧跟,但脑机接口才是未来
  20. 华为思科宣布全力布局,美国NSF巨资支持的NDN到底什么来头?

热门文章

  1. dnf连接服务器黑屏xp系统,windows xp进入桌面后黑屏的解决技巧
  2. BZOJ 1717: [Usaco2006 Dec]Milk Patterns 产奶的模式
  3. 利用threading多线程爬取王者荣耀的高清壁纸
  4. 科学技术法-正则表达式-QT
  5. 在电子电路中,为什么要进行电气隔离?
  6. 个人笔记-如何学习(上)
  7. [eNSP]→ospf基本配置、区域划分
  8. android 高度百分比,Android 屏幕适配-百分比布局适配
  9. 智遥工作代理问题解析
  10. 智遥工作流——会签与多人审批区别