翻譯|使用教程|編輯:楊鵬連|2020-09-16 11:06:36.767|閱讀 265 次
概述:VARCHART XGantt是一個交互式甘特圖組件,可生成清晰,靈活的甘特圖。本文介紹了 XGantt .NET為活動和鏈接提供數據。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
甘特圖(Xgantt)從1998年的第一個商用版本開始就致力于計劃編制和項目管理方面控件的研究和開發,經過20多年的積累和沉淀,目前可為軟件開發商和最終用戶提供最頂級的計劃編制和項目管理的控件產品,幫助用戶快速的整合項目管理軟件所需的甘特圖,網絡圖,資源柱狀圖,日程日歷,資源調度等功能模塊,并提供全方位的支持和服務。
VARCHART XGantt是一款功能強大的甘特圖控件,其模塊化的設計讓您可以創建滿足需要的應用程序。XGantt可用于.NET,ActiveX和ASP.NET應用程序,可以快速、簡單地集成到您的應用程序中,幫助您識別性能瓶頸、避免延遲以及高效利用資源,使復雜數據變得更加容易理解。
與時間和資源相關的計劃數據,例如工作,任務,訂單,活動和能力,最好在甘特圖中顯示。
在智能甘特圖中,計劃者可以隨時采取糾正措施。
加速您的開發并創建引人注目的、易于使用的可視化調度體驗。VARCHART XGantt在市場上已有近30年的歷史,它提供了最完善的C#Gantt圖表控件,可用于構建現代而又可靠的行業資源調度應用程序。
為了顯示活動和鏈接,VARCHART XGantt需要提供數據。默認情況下,對于關聯的通信使用兩個表:
1. NodeTable(也稱為Maindata)
2. 鏈接表(LinkTable)(也稱為關系)
在表單中放置VARCHART XGantt時,已經預先提供了基本字段。
Maindata數據表的字段:
關系數據表的字段:
如果需要比默認定義的表更多的表,可以在單擊屬性頁General上啟用的擴展數據表之后,在“管理數據表”對話框的上部部分創建它們。
這可以通過使用對象類型VcDataRecordCollection的方法Add(…)來完成。EndLoading方法完成要組成的對應圖表的數據輸入。為此,請在表單的加載事件中輸入以下代碼行。
示例代碼VB.NET
Dim dataTable As VcDataTable Dim dataRecCltn As VcDataRecordCollection VcGantt1.ExtendedDataTablesEnabled = True dataTable = VcGantt1.DataTableCollection.DataTableByName("Maindata") dataRecCltn = dataTable.DataRecordCollection dataRecCltn.Add("1;Node 1;07.05.2010;;5") dataRecCltn.Add("2;Node 2;14.05.2010;;5") dataRecCltn.Add("3;Node 3;21.05.2010;;5") dataTable = VcGantt1.DataTableCollection.DataTableByName("Relations") dataRecCltn = dataTable.DataRecordCollection dataRecCltn.Add("1;1;2") dataRecCltn.Add("2;2;3") VcGantt1.EndLoadingc#示例代碼
vcGantt1.ExtendedDataTablesEnabled = true; VcDataTable dataTable = vcGantt1.DataTableCollection.DataTableByName("Maindata"); VcDataRecordCollection dataRecCltn = dataTable.DataRecordCollection; dataRecCltn.Add("1;Node 1;07.05.2010;;5"); dataRecCltn.Add("2;Node 2;14.05.2010;;5"); dataRecCltn.Add("3;Node 3;21.05.2010;;5"); dataTable = vcGantt1.DataTableCollection.DataTableByName("Relations"); dataRecCltn = dataTable.DataRecordCollection; dataRecCltn.Add("1;1;2"); dataRecCltn.Add("2;2;3"); vcGantt1.EndLoading;記錄中的值用分號分隔。字段的順序必須與數據定義中字段的順序相對應。新記錄必須有明確的標識,而不是空的。記錄中的日期必須與數據定義表中的DateFormat定義相對應。對持續時間的解釋取決于時間單位的設置。它被預先設置為天,你可以在一般屬性頁面上修改。
對于表格和通用屬性頁上的每個對話框,日期輸出格式的定義一致。
或者,您也可以從CSV文件加載數據。文件的結構必須符合以下方案:
示例代碼
1;Node 1;07.05.2010;;5; 2;Node 2;14.05.2010;;5; 3;Node 3;21.05.2010;;5; * * * * 1; 1; 2; 2、2、3;每個記錄都有自己的行。這些行的內容對應于對象類型的方法Add(…)傳遞的參數
首先列出Maindata數據表的記錄,然后列出關系數據表的記錄。使用表名****來標記記錄組的開始。
例如,如果您以intro的名稱保存這類文件。csv,你可以導入數據如下:
示例代碼VB.NET
VcGantt1.Open("c:\intro.csv") Example Code C# vcGantt1.Open(@"c:\intro.csv");指定所表示的時間段
到目前為止,您將看不到任何活動,因為時間尺度還沒有調整到相應的時期。時間尺度的顯示范圍可以通過屬性TimeScaleStart和TimeScaleEnd定義,或者通過對象VcGantt的OptimizeTimeScaleStartEnd(…)方法從數據中確定。
Example Code VB.NET
VcGantt1.TimeScaleEnd = New DateTime(2011, 1, 1) VcGantt1.TimeScaleStart = New DateTime(2010, 5, 4)Example Code C#
vcGantt1.TimeScaleEnd = new DateTime(2011,1,1); vcGantt1.TimeScaleStart =new DateTime(2010,5,4);下面是我們的初始示例所需要的代碼。
Example Code VB.NET
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load VcGantt1.Width = ClientSize.Width - VcGantt1.Left VcGantt1.Height = ClientSize.Height - VcGantt1.Top Dim dataTable As VcDataTable Dim dataRecCltn As VcDataRecordCollection vcGantt1.ExtendedDataTablesEnabled = True dataTable = VcGantt1.DataTableCollection.DataTableByName("Maindata") dataRecCltn = dataTable.DataRecordCollection dataRecCltn.Add("1;Node 1;03.05.2010;;5") dataRecCltn.Add("2;Node 2;08.05.2010;;5") dataRecCltn.Add("3;Node 3;15.05.2010;;5") dataTable = VcGantt1.DataTableCollection.DataTableByName("Relations") dataRecCltn = dataTable.DataRecordCollection dataRecCltn.Add("1;1;2") dataRecCltn.Add("2;2;3") VcGantt1.EndLoading() VcGantt1.OptimizeTimeScaleStartEnd(3) End Sub Private Sub Form1_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Resize VcGantt1.Width = ClientSize.Width - VcGantt1.Left VcGantt1.Height = ClientSize.Height - VcGantt1.Top End SubExample Code C#
private void Form1_Load(object sender, System.EventArgs e) { vcGantt1.Width = ClientSize.Width - vcGantt1.Left; vcGantt1.Height = ClientSize.Height - vcGantt1.Top; vcGantt1.ExtendedDataTablesEnabled = true; VcDataTable dataTable = vcGantt1.DataTableCollection.DataTableByName("Maindata"); VcDataRecordCollection dataRecCltn = dataTable.DataRecordCollection; dataRecCltn.Add("1;Node 1;03.05.2010;;5"); dataRecCltn.Add("2;Node 2;08.05.2010;;5"); dataRecCltn.Add("3;Node 3;15.05.2010;;5"); dataTable = vcGantt1.DataTableCollection.DataTableByName("Relations"); dataRecCltn = dataTable.DataRecordCollection; dataRecCltn.Add("1;1;2"); dataRecCltn.Add("2;2;3"); vcGantt1.EndLoading(); vcGantt1.OptimizeTimeScaleStartEnd(3); } private void Form1_Resize(object sender, System.EventArgs e) { vcGantt1.Width = ClientSize.Width - vcGantt1.Left; vcGantt1.Height = ClientSize.Height - vcGantt1.Top;如果您現在運行該程序,結果應該如下圖所示。
APS幫助提升企業生產效率,真正實現生產計劃可視化呈現與控制,快速有效響應不同場景的生產計劃,提高準時交貨能力,提高產能和資源利用率
想要了解甘特圖或慧都APS系統,請登錄慧都網,解決您的問題!
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自: