Undo and Redo in GanttChartView control from DlhSoft Gantt Chart Hyper Library for JavaScript, using an open source UndoStack component written by DlhSoft in C# and having JavaScript and TypeScript definitions generated automatically using Bridge.net

Hello and Happy New Year! This year we’re heading to continue improving our existing products with interesting updates, in parallel with turning some new ideas into great new features and/or new products.

As a start, we chose to develop a small new JavaScript/TypeScript sample app for DlhSoft Gantt Chart Hyper Library to show developers how they can add Undo and Redo commands in their JavaScript-targeting apps and automatically updating Gantt Chart items and the user interface of the component when such commands are executed.

However, we found it would be more useful for everybody if we extracted the Undo stack recording and execution into a separate small library that we could offer as open source for everyone to be able to update and extend for their own purposes, as needed, even when not using DlhSoft components. Eventually, here is the Undo stack repository on GitHub!

Internally, we used Bridge.net the first time to write the internal logic code of the UndoStack component in C#, and have it immediately available in JavaScript too (for our original purpose). While this process involved working around some issues that Bridge has with dates, times, and time spans and we eventually decided to use integral types instead, the output of using that package is really nice: we could then easily generate two NuGet packages, one for .NET and one for JavaScript, having the logic actually in a single source code base using a single programming language (C#)! This is the first time we didn’t need to duplicate business logic originally written in one language (C#) to another (JavaScript/TypeScript).

Finally, here is the Undo-Redo sample app for GanttChartView JavaScript component, in full source code (available in TypeScript on top of UndoStack definitions, or in generated JavaScript). Enjoy!

Posted in Development Components | Tagged , , , , , , , , , , , | 2 Comments

Support for calling more operations on GanttChartView component for UWP

We’ve just released a new Windows 10 UWP-based build for DlhSoft Gantt Chart Modern Library (WinMD). The package includes GanttChartView and ScheduleChartView components that, as before, reuse the JavaScript components from Gantt Chart Hyper Library internally, though an API available from all environments supported in WinRT development (.NET managed, C++, JavaScript), but this time we’ve opened up more integration between the JavaScript and outside worlds.

Specifically, at initialization time you can now set up JavaScript functions that define extended endpoints that the internal components can be accessed within, and then your application code can easily execute operations exposed by those endpoints.

GanttChartView.OperationsCode = @"
    function levelResources(dateExpression) { control.levelResources(false, eval(dateExpression)); }
    function optimizeWork() { control.optimizeWork(); }";
private void LevelResourcesButton_Click(object sender, RoutedEventArgs e)
    // Level resources starting at 10th day of current month.
    GanttChartView.ExecuteOperation("levelResources", string.Format("new Date({0}, {1}-1, {2})", year, month, 10));
private void OptimizeWorkButton_Click(object sender, RoutedEventArgs e)

The full updated WinRT Gantt Chart view sample source code is available on GitHub.

Posted in Development Components | Tagged , , , , | Leave a comment

Aligning GanttChartDataGrid cell content, even when exporting or printing

With the recently released Gantt Chart Light Library build (revision you can now align grid cells and have the exported image or printed document follow your setting. To have output text right aligned, for example, just ensure you use DataGridTemplateColumn with ContentControl element inside its CellTemplate, having HorizontalAlignment property set to Right:

<DataGridTemplateColumn Header="Description">
            <ContentControl Content="{Binding Tag.Description}" Padding="4"
Posted in Development Components | Tagged , , , , , | Leave a comment

PHP integration sample for our JavaScript based Gantt Chart

We’ve added a new sample app showing the basics on how one can use the JavaScript GanttChartView component from Gantt Chart Hyper Library in PHP. See its full source code on GitHub.

Basically, we’ve simulated having some timeline objects (task items) read from a database on the server side and generated client side code to load and display them with an interactive Gantt Chart. Then we are recording client changes into a hidden form field and upon a post back operation we simulate propagating updated values to the database, while the user interface items get reinitialized with the changes applied as well.

Posted in Development Components | Tagged , | Leave a comment

New JavaScript, TypeScript and Angular demos, and 30% discount for all licenses until August 31

If you want a HTML5 based Gantt or Schedule Chart you may haven’t noticed that in the last few months we added a complete suite of demo applications (adding multiple style themes as well) on our Web site, showing exactly what features the components have and how you can turn them on, using pure JavaScript, TypeScript language or AngularJS framework. Feel free to browse them all and let us know if you think there is anything missing or we can do something better for you regarding integrating our components into your apps.

Also note that the online product documentation has recently been updated and it’s not using better styles and more code snippets. And this is for other products too, just check Documentation links from our product pages.

You can also find a new hierarchical data WPF component available with the latest build of DlhSoft Hierarchical Data Light Library: OrganizationalChartView.

Separately, we have more good news again: until August 31, all our license prices receive unconditional 30% discount!

If you have any questions or need help for integrating our components into your application, don’t hesitate to contact DlhSoft Support – it’s 100% free and unlimited, even before purchasing a license!

Posted in Development Components, Promotions | Tagged , , | Leave a comment

Organizational Chart for WPF

If you looked at our Hierarchical Data Light Library before you noticed that it included a DataTreeGrid WPF control that combines DataGrid and TreeView built-in components of .NET Framework. Moreover, the data hierarchy doesn’t require you to define a tree of objects nor complex HierarchicalDataTemplate instances, but instead we support a simple Indentation property on item level to indicate the hierarchical structure of your data, and the component does the magic of interpreting it behind the scenes.

The same happens now with the brand new WPF 4.5 based OrganizationalChartView component: simply define your data as a flat item collection with indentation values, and we’ll create a tree-view like container displaying the nodes and allowing the end user to select, or expand and collapse them with simple mouse clicks or taps!


Posted in Development Components | Tagged , , , | Leave a comment

Schedule Chart in LightSwitch desktop apps

There is no LightSwitch extension for ScheduleChartDataGrid component from Gantt Chart Light Library (as there is one for GanttChartDataGrid), but you can use the Silverlight component directly in LightSwitch by just writing some custom code to link it properly.

We’ve prepared a small sample application showing how one can set up ScheduleChartDataGrid component as Custom Control in a LightSwitch screen, binding to entities organized as resources (to be displayed as rows) and tasks (to be displayed as assignment bars in the Gantt Chart area).

Download it now: it includes full C# source code packaged as a Visual Studio 2013 LightSwitch desktop solution that you may adapt to your own needs.

Posted in Development Components | Tagged , , , | Leave a comment