彩票走势图

jQuery Gantt Package使用教程:设置甘特图表教程

翻译|使用教程|编辑:杨鹏连|2021-03-11 10:48:11.393|阅读 360 次

概述:在本主题中,我们将介绍在甘特表部分设置列所需的不同步骤。请注意,甘特表不会自动填充表格中的列,你必须通过列定义来进行设置。

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

jQuery Gantt Package是一个真正的跨平台,基于HTML5 / jQuery的本地实现,具有2个不同的gantt小部件,可满足您所有基于gantt的可视化需求。还带有ASP.NET WebControl和MVC扩展,可轻松集成到现有应用中。

点击下载jQuery Gantt Package试用版

在本主题中,我们将介绍在甘特表部分设置列所需的不同步骤。请注意,甘特表不会自动填充表格中的列,你必须通过列定义来进行设置。其中,这让你可以灵活地自定义表格中显示的列。

在本主题的底部,您将看到对样本的引用,在那里可以看到这些功能的完整实现。

创建GanttTable列

GanttTable中的每个列都应该通过列定义来定义。这是开始时间列的列定义。

{
  field: "Activity_M().StartTime_M()",
  title: "StartTime",
  width: 150,
  format: "MM/dd/yy",         
  editor: "<input data-bind='ActivityTimeBinder:Activity_M().StartTime_M' />"
},
这在我们的大多数样本中都有说明。例如:


在HTML中:.\Samples\GanttControlTableCustomization.htm。
在ASP.NET MVC中:.Views/Home/ProjectGantt/GanttControlTableCustomization.cshtml。
在ASP.NET中:.\Samples\ProjectGantt\GanttControlTableCustomization.aspx。

甘特图编辑

VWGrid支持incell和弹出式编辑,incell是默认的编辑模式。以下步骤说明如何在GanttTable中设置编辑。

incell编辑:

步骤1:为列创建一个编辑器模板。

定义一个自定义单元格编辑模板。

<script id="projectGanttNameEditor" type="text/x-jquery-tmpl">
    <div class="rq-grid-expand-indentWidth" style="height: 1px; width: ${data.IndentWidth_M()}px;"></div>
    <div style="width: 12px; display: ${data.IsParent_M() ? "block":"none" }" class="arrowContainer">
        <div onclick="ExpanderOnclick(this,event)" id="arrow" class="${ data.IsExpanded_M() ? " rq-grid-expand-arrow rq-grid-collapse-arrow": "rq-grid-expand-arrow"} rq-Ignore-click"></div>
    </div>
    <div class="rq-grid-expander-text"><input data-bind="value: Activity_M().ActivityName_M "/></div>
</script>
第二步:在栏目定义中指定编辑器。

在Column定义中指定上述编辑器。

{
    field: "Activity_M().ActivityName_M()",
    title: "Activity Name",
    width: 200,
    editor: $.trim($("#projectGanttNameEditor").html()),
    template: RadiantQ.Default.Template.ProjectGanttExpandableTextBlockTemplate()
},
第三步:指定属性,如果可编辑,如果父级可编辑

你必须在列定义中使用 "column.field "字段指定要编辑的属性。在编辑行时,数据上下文中的对象是 "活动视图 "实例,所以你可以引用活动视图实例的任何属性或子属性。

所以,你可以简单地像这样引用活动视图实例的属性:字段。"Activity.ActivityName"。

或者你可以引用代表任务的数据绑定对象中的任何属性,像这样:字段。"Activity.DataSource.Cost "这在.Samples/GanttControlCostTracking.htm中进行了说明)

$gantt_container = $('#gantt_container');
$gantt_container.GanttControl({
  ..............
  ..............
  GanttTableOptions: {
    columns: [{
      field: "Activity.DataSource.Cost",
      title: "Cost",
      editor: "<input   data-bind='value:Activity.DataSource.Cost' data-role=\"spinner\"  />",
      template:"<div>${ToDollarString(data)}</div>",
      width: 100,
      iseditable: true,
      isParentEditable: false
    }],
    startEdit: function (cell, dataItem, column) {
        // Preventing the row  edit when cost is geater than 1000
       if (data.activity.DataSource.Cost >= 1000)
        return false;
      }
    },
  .............
  .............
});
这在这个样本中得到了说明:

在HTML中:.\Samples\GanttControlTableCustomization.htm。
在ASP.NET MVC中:.Views/Home/ProjectGantt/GanttControlTableCustomization.cshtml。
在ASP.NET中:.\Samples\ProjectGantt\GanttControlTableCustomization.aspx。

弹出式编辑:

第1步:在Popup中创建一个自定义编辑器。

默认情况下,甘特图为您提供了一个可扩展的文本框元素用于编辑名称列的值。你可以使用下面的自定义编辑器函数来使用输入元素代替可扩展的文本框来编辑弹出窗口中的名称值。

  function nameEditor($elem, options, data, ispopupEditing) {
       if (ispopupEditing)
          return "<input data-bind='value:Activity_M().ActivityName_M'/>";
       else
          return RadiantQ.Default.Template.ProjectGanttExpandableTextboxEditor();
    }
第二步:在栏目定义中指定编辑器

在Column定义中指定上述编辑功能。

  Columns=[{
        field: "Activity_M().ActivityName_M()",
        title: "Activity Name",
        width: 100,
        editor: nameEditor,
        template: RadiantQ.Default.Template.ProjectGanttExpandableTextBlockTemplate()
    },
     ........
    ],
第3步:在GanttTableOp中指定弹出式编辑模式的属性。

要启用 "弹出式编辑",你必须将编辑模式设置为 "弹出式"。当用户点击已经选择的行时,弹出窗口将打开。

$gantt_container.GanttControl({
                GanttTableOptions: {
                    editmode: "popup"
                }
            });

这在这个样本中得到了说明:

In HTML : ..\Samples\TaskEditingDialog.htm.
In ASP.NET MVC : ..\Views\Home\Common\TaskEditingDialog.cshtml.
In ASP.NET : ..\Samples\Common\TaskEditingDialog.aspx.

相关产品介绍:

VARCHART XGantt支持ActiveX、.Net等平台的C#甘特图控件
AnyGantt构建复杂且内容丰富的甘特图的理想工具
phGantt Time Package对任务和时间的分配管理的甘特图
dhtmlxGantt交互式JavaScript / HTML5甘特图

APS是慧都科技15年行业经验以及技术沉淀之作,通过连接企业接单、采购、制造、仓储物流等整个供应链流程,帮助提升企业生产效率。>>查看APS详细信息


想要购买甘特图正版授权,或了解更多产品信息请点击【咨询在线客服】


标签:

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

文章转载自:

为你推荐

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


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP